小编mgo*_*old的帖子

Git提交bash脚本

我正在编写一个bash脚本来添加,提交,推送目录中的所有文件.

#!/bin/bash  
git add .  
read -p "Commit description: " desc  
git commit -m $desc  
git push origin master
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

$ ./togithub  
Commit description:   
test commit script  
error: pathspec 'commit' did not match any file(s) known to git.  
error: pathspec 'script"' did not match any file(s) known to git.  
Everything up-to-date
Run Code Online (Sandbox Code Playgroud)

我不确定这是读文本(这echo很好)或传递给它的问题git commit -m.

git bash github

32
推荐指数
5
解决办法
5万
查看次数

在Tkinter中绘制圆圈(Python)

在a上绘制圆圈tkinter Canvas通常通过该create_oval方法完成.但是,提供边界框通常是考虑绘制圆形的一种令人困惑的方式.为它提供一个快捷方式并不是特别困难,但我找不到其他人做类似的事情,所以我会发布它希望别人觉得它有用.

python geometry tkinter

19
推荐指数
2
解决办法
6万
查看次数

d3过滤器选择不起作用?

要么我没有正确使用d3的selection.filter,要么它是错误的.我可以将这个问题提炼成几行.我在加载了d3的Chrome调试器中.让我们从一个空的选择开始

d3.selectAll("nonexistant").empty()
> true
Run Code Online (Sandbox Code Playgroud)

并将一些数据绑定到它.

d3.selectAll("nonexistant").data([1,2,3,4])
> [Array[4]]
Run Code Online (Sandbox Code Playgroud)

很好,所以它有四个.让我们检查一下selection.size:

d3.selectAll("nonexistant").data([1,2,3,4]).size()
> 0
Run Code Online (Sandbox Code Playgroud)

嗯,我想这是因为没有DOM元素,但更新选择是空的,因为没有以前的元素.因此,让我们访问的输入选择.

d3.selectAll("nonexistant").data([1,2,3,4]).enter()
> [Array[4]]
d3.selectAll("nonexistant").data([1,2,3,4]).enter().size()
> TypeError: undefined is not a function
d3.selectAll("nonexistant").data([1,2,3,4]).enter().append("p").size()
> 4
Run Code Online (Sandbox Code Playgroud)

不确定为什么输入选择会导致错误,(更新:在v3.4.12中修复)但是无论如何,如果我们尝试使用文档中的示例函数进行过滤,

function odds(d, i) { return i & 1; }
d3.selectAll("nonexistant").data([1,2,3,4]).filter(odds);
> [Array[0]]
d3.selectAll("nonexistant").data([1,2,3,4]).enter().filter(odds);
> []
d3.selectAll("nonexistant").data([1,2,3,4]).enter().append("p").filter(odds)
> [Array[2]]
Run Code Online (Sandbox Code Playgroud)

当没有绑定DOM元素时,为什么要静默过滤掉所有元素?当我已经拥有DOM元素时,它似乎确实有效.但这感觉很无用,因为我不想为我丢弃的数据创建元素.也许我先把过滤器放进去了?

d3.selectAll("nonexistant").data([1,2,3,4]).filter(odds).enter().append("p").size()
> TypeError: undefined is not a function
d3.selectAll("nonexistant").data([1,2,3,4]).enter().filter(odds).append("p").size()
> TypeError: undefined is not a function
Run Code Online (Sandbox Code Playgroud)

不.似乎可行的方法是使用JS 对数组的本机过滤器:

d3.selectAll("nonexistant").data([1,2,3,4].filter(odds)).enter().append("p").size()
> 2 …
Run Code Online (Sandbox Code Playgroud)

d3.js

13
推荐指数
1
解决办法
4793
查看次数

iOS:从Storyboard中唯一标识ViewControllers

我有一个ViewController可重用的自定义,并且在一个NavigationController故事板中将任意数量的实例链接在一起,所有实例都与委托共享相同的模型.

ViewController的需要告诉模型它们是实例.目前,他们有一个他们从segue获得的int属性,但它似乎不是非常惯用的,并且不适合屏幕上有多个实例(对于iPad).我认为必须有一个更清洁的方法来做到这一点,所以有谁知道它是什么?谢谢.

结果:self.view.tag

objective-c uiviewcontroller ios

5
推荐指数
1
解决办法
4819
查看次数

Python计数器的大小

我想知道Python计数器中有多少项,包括重复项.我试过len,它告诉我独特物品的数量:

>>> c = Counter(x=3,y=7)
>>> len(c)
2
Run Code Online (Sandbox Code Playgroud)

我最好的是sum(c.itervalues())我认为并不可怕,但我希望Counter对象缓存值,以便我可以在O(1)中访问它.

python counter

5
推荐指数
2
解决办法
6686
查看次数

D3:延迟后添加元素,然后过渡

我有一个非常大的 csv 文件,我正在使用 D3.js 对其进行可视化。其中一个数据字段是时间戳,因此(而不是一次显示所有这些信息)我想在与时间戳成比例的延迟后创建一个 svg 元素(基于其他数据字段),然后将其淡出三个秒。由于数据的大小,我无法预先创建所有元素,即使它们是不可见的;每个元素应该只存在三秒钟。想要的效果是一堆点突然出现然后消失。

我最好的尝试如下。策略是使用两个过渡:一个延迟,然后是淡入淡出过渡。它似乎不起作用,而是一次创建所有元素(尽管褪色有效)。

d3.csv(datafile).get(function(error, rows) {
        for (var i = rows.length; i--;){
                var d = rows[i];
                plot.select("foo") // empty selection
                    .transition()
                    .delay(/*expression with d.timestamp*/)
                    .call(function(){
                        plot.append("circle")
                            .attr(/*several, snip */)
                            .style("opacity", 1)
                            .transition()
                            .duration(3000)
                            .style("opacity", 0)
                            .remove()
                    });
        }

    });
Run Code Online (Sandbox Code Playgroud)

编辑 20154 月自从提出问题以来学到了很多东西,显而易见的事情似乎是立即以 0 不透明度插入所有内容。然后创建一个持续时间 0、可变延迟过渡到 1 不透明度,然后从那里淡出。还可以使用嵌套选择来避免显式 for 循环。我还没有尝试过,但它应该可以工作。

d3.js

4
推荐指数
1
解决办法
9065
查看次数

有没有办法将两个参数传递给Elm中的函数?

有这个功能:

f : Int -> Int -> Int
f a b = 
  a + b
Run Code Online (Sandbox Code Playgroud)

有没有办法管道a和b?

我只有这么远,但我想知道是否有办法摆脱括号:

main =
  1 |> (2 |> f) |> toString |> text
Run Code Online (Sandbox Code Playgroud)

elm

2
推荐指数
1
解决办法
1545
查看次数

标签 统计

d3.js ×2

python ×2

bash ×1

counter ×1

elm ×1

geometry ×1

git ×1

github ×1

ios ×1

objective-c ×1

tkinter ×1

uiviewcontroller ×1