小编Sil*_*ost的帖子

如何在Python中廉价地获得行数?

我需要在python中获取大文件(数十万行)的行数.记忆和时间方面最有效的方法是什么?

目前我这样做:

def file_len(fname):
    with open(fname) as f:
        for i, l in enumerate(f):
            pass
    return i + 1
Run Code Online (Sandbox Code Playgroud)

有可能做得更好吗?

python text-files line-count

931
推荐指数
18
解决办法
77万
查看次数

什么是Python中的"命名元组"?

阅读Python 3.1中更改,我发现了一些......意外的:

sys.version_info元组现在是一个命名元组:

我之前从未听说过命名元组,我认为元素可以用数字(如元组和列表)或键(如dicts)索引.我从没想过他们可以两种方式编入索引.

因此,我的问题是:

  • 什么叫元组?
  • 怎么用?
  • 为什么/何时应该使用命名元组而不是普通元组?
  • 为什么/何时应该使用普通元组而不是命名元组?
  • 是否有任何类型的"命名列表"(命名元组的可变版本)?

python tuples namedtuple

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

在Python中使用**kwargs的正确方法

**kwargs在默认值方面,在Python中使用的正确方法是什么?

kwargs返回字典,但设置默认值的最佳方法是什么,还是有一个?我应该只是作为字典访问它吗?使用get函数?

class ExampleClass:
    def __init__(self, **kwargs):
        self.val = kwargs['val']
        self.val2 = kwargs.get('val2')
Run Code Online (Sandbox Code Playgroud)

一个简单的问题,但我找不到好的资源.人们在我看过的代码中采用不同的方式,并且很难知道要使用什么.

python kwargs

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

如何比较python中的两个列表并返回匹配项

我想获取两个列表并找到两者中出现的值.

a = [1, 2, 3, 4, 5]
b = [9, 8, 7, 6, 5]

returnMatches(a, b)
Run Code Online (Sandbox Code Playgroud)

[5]例如,会回来.

python list

349
推荐指数
12
解决办法
83万
查看次数

315
推荐指数
11
解决办法
30万
查看次数

在Python中搜索并替换文件中的一行

我想循环遍历文本文件的内容,并在某些行上进行搜索和替换,并将结果写回文件.我可以先将整个文件加载到内存中然后再写回来,但这可能不是最好的方法.

在以下代码中,最好的方法是什么?

f = open(file)
for line in f:
    if line.contains('foo'):
        newline = line.replace('foo', 'bar')
        # how to write this newline back to the file
Run Code Online (Sandbox Code Playgroud)

python file

271
推荐指数
11
解决办法
42万
查看次数

如何在PHP中将逗号分隔的字符串拆分为数组?

我需要将我的字符串输入拆分为逗号中的数组.

我怎样才能完成这个?

输入:

9,admin@example.com,8
Run Code Online (Sandbox Code Playgroud)

php arrays string

244
推荐指数
6
解决办法
40万
查看次数

删除一个cookie

当我想删除Cookie时,我试试

unset($_COOKIE['hello']);
Run Code Online (Sandbox Code Playgroud)

我在firefox的cookie浏览器中看到cookie仍然存在.我怎样才能真正删除cookie?

php cookies

243
推荐指数
12
解决办法
54万
查看次数

在Python FOR循环中获取循环计数

for循环遍历列表的Python 循环中,我们可以编写:

for item in list:
    print item
Run Code Online (Sandbox Code Playgroud)

它整齐地遍历列表中的所有元素.有没有办法在循环中知道到目前为止我循环了多少次?例如,我想要一个列表,在我处理了十个元素后,我想用它们做一些事情.

我想到的替代方案将是这样的:

count=0
for item in list:
    print item
    count +=1
    if count % 10 == 0:
        print 'did ten'
Run Code Online (Sandbox Code Playgroud)

要么:

for count in range(0,len(list)):
    print list[count]
    if count % 10 == 0:
        print 'did ten'
Run Code Online (Sandbox Code Playgroud)

到目前为止,是否有更好的方法(就像for item in list)获得迭代次数?

python for-loop

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

从第2行读取文件或跳过标题行

如何跳过标题行并开始从第2行读取文件?

python file-io

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

标签 统计

python ×8

php ×2

string ×2

arrays ×1

cookies ×1

exec ×1

file ×1

file-io ×1

for-loop ×1

kwargs ×1

line-count ×1

list ×1

namedtuple ×1

text-files ×1

tuples ×1