小编mun*_*nch的帖子

Python:创建n个列表列表的最快方法

所以我想知道如何最好地创建一个空白列表列表:

[[],[],[]...]
Run Code Online (Sandbox Code Playgroud)

由于Python如何使用内存中的列表,这不起作用:

[[]]*n
Run Code Online (Sandbox Code Playgroud)

这确实创建[[],[],...]但每个元素都是相同的列表:

d = [[]]*n
d[0].append(1)
#[[1],[1],...]
Run Code Online (Sandbox Code Playgroud)

像列表理解这样的东西:

d = [[] for x in xrange(0,n)]
Run Code Online (Sandbox Code Playgroud)

但是这使用Python VM进行循环.有没有办法使用隐含循环(利用它用C语言编写)?

d = []
map(lambda n: d.append([]),xrange(0,10))
Run Code Online (Sandbox Code Playgroud)

这实际上比较慢.:(

python

89
推荐指数
4
解决办法
16万
查看次数

如何获取目录中的文件,包括所有子目录

我正在尝试获取目录中所有日志文件(.log)的列表,包括所有子目录.

python

51
推荐指数
4
解决办法
7万
查看次数

配置git以便"git pull"而不是"git pull origin master"?

使用git pull用于从远程仓库拉预期-现在,它要求我使用git pull origin master.我不太明白它给我的指示,说我可以在我的配置文件中添加一些内容:

[branch "master"]
remote = <nickname>
merge = <remote-ref>

[remote "<nickname>"]
url = <url>
fetch = <refspec>
Run Code Online (Sandbox Code Playgroud)

现在我的配置文件看起来像

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
[remote "origin"]
    url = |redacted|
    fetch = +refs/heads/*:refs/remotes/origin/*
Run Code Online (Sandbox Code Playgroud)

所以我猜我需要添加

[branch "master"]
    remote = origin
    merge = ??
Run Code Online (Sandbox Code Playgroud)

什么"合并"需要作为其论点?什么是远程参考(erence?)?我试着查看http://git-scm.com/docs/git-config,但似乎更多的是关于命令本身.

提前致谢!

git

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

PHP转义文件名的用户输入

我有一个用户可以上传文件的表单,我想将文件命名为[id]_[lastname]_[firstname].pdf.该名称由用户输入,我害怕他们输入带斜线的东西.否则,如果名字是,$path = $dir.$filename可能会导致类似的结果.$path = 'uploads/2_smith_john/hahaimajerk.pdf'john/hahaimajerk

我真的不想强迫用户限制他们的名字; 我不介意在文件名中稍微更改一下他们的名字,只要我能说出原来的名字.我需要逃脱哪些角色,或者还有其他方法可以做到这一点?或者......我只是用mysql_real_escape_string

php

38
推荐指数
2
解决办法
3万
查看次数

为什么if("string")将"string"评估为true,但if("string"== true)不是?

给出以下代码:

if ("string") {
    console.log('true!');
}
//logs "true" to the console
if ("string"==true) {
    console.log('true!');
}
//doesn't log anything
Run Code Online (Sandbox Code Playgroud)

为什么会这样?我以为"string"是被转换成一个数字,就像布尔一样.因此true变得1"string"NaN.第二个if语句有意义,但我不明白为什么第一个语句会导致内部循环被评估.这里发生了什么?

javascript

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

ArrayLists是如何用Java实现的?

在询问之前做了一些搜索,一些不太可靠的消息来源表明存在一个底层Object[]数组.

它就这么简单吗?即它在必要时处理调整大小,可能会做一些技巧,例如将大小加倍以获得更好的分摊运行时间,并跟踪数组中第一个空插槽的位置.

或者,是否对成员资格测试和稀疏数组进行了优化?

java

33
推荐指数
2
解决办法
4万
查看次数

在iphone safari webapp中隐藏键盘

我正在为iPhone创建一个基于HTML/CSS/JS的webapp.我正在使用表单来接收输入并将数据传递给脚本,但我遇到的一个问题是键盘不会消失.用户将输入信息,点击提交,因为它是JavaScript,页面不会重新加载.键盘仍然存在,这是一个麻烦,并为用户增加了另一个步骤(必须关闭它).

有没有办法强迫Safari中的键盘消失?从本质上讲,我有一种感觉,这个问题等同于问我如何强制输入框失去焦点或模糊.在线查看,我发现有很多示例可以检测模糊事件,但没有一个可以强制发生此事件.

iphone keyboard web-applications blur

31
推荐指数
4
解决办法
3万
查看次数

#ql在sql中意味着什么?

有谁知道OR 1#在mysql注入的上下文中有什么意思?

mysql sql syntax comments

17
推荐指数
1
解决办法
1万
查看次数

基于动态属性的django查询()

我想知道是否有一种方法可以使用动态生成的python属性在查询集上使用Django的filter()property().我有first_namelast_name每个用户,我想根据他们的连接名称进行过滤first_name last_name.(这背后的原因是当我进行自动填充时,我会搜索查询是否与名字,姓氏或部分连接John S匹配John Smith.例如,我想匹配.

我创建了一个属性name:

def _get_name(self):
    return self.first_name + " " + self.last_name
    name = property(_get_name)
Run Code Online (Sandbox Code Playgroud)

这样我就可以调用user.name以获取连接的名称.

但是,如果我尝试这样做,User.objects.filter(name__istartswith=query)我会收到错误Cannot resolve keyword 'name' into field.

关于如何做到这一点的任何想法?我是否必须在数据库中创建另一个字段来存储全名?

python django django-queryset

12
推荐指数
2
解决办法
9618
查看次数

Python库将正则表达式解析为AST?

为了强调,我不想"使用正则表达式解析" - 我想"将正则表达式解析为符号树".(搜索只带来了前者...)

我的用例:为了加速对数据库的正则表达式搜索,我想解析一个正则表达式,(foo|bar)baz+(bat)*并拉出必须出现在匹配中的所有子串.(在这种情况下,只是baz因为foo/bar是替换而bat会出现0次.)

为此,我需要对正则表达式运算符/语义有所了解.re.DEBUG最近的:

In [7]: re.compile('(foo|bar)baz+(bat)', re.DEBUG)
subpattern 1
  branch
    literal 102
    literal 111
    literal 111
  or
    literal 98
    literal 97
    literal 114
literal 98
literal 97
max_repeat 1 4294967295
  literal 122
subpattern 2
  literal 98
  literal 97
  literal 116
Run Code Online (Sandbox Code Playgroud)

但是,它只是打印出来,据我所知,c实现后来不会保留结构.关于如何在不编写我的所有者解析器的情况下解析它的任何想法?

python regex parsing

10
推荐指数
2
解决办法
677
查看次数