Tag: python

用Python编写的CSV文件在每行之间都有空行

import csv with open('thefile.csv', 'rb') as f: data = list(csv.reader(f)) import collections counter = collections.defaultdict(int) for row in data: counter[row[10]] += 1 with open('/pythonwork/thefile_subset11.csv', 'w') as outfile: writer = csv.writer(outfile) for row in data: if counter[row[10]] >= 504: writer.writerow(row) 该代码读取thefile.csv ,进行更改,并将结果写入到thefile_subset1 。 但是,当我在Microsoft Excel中打开生成的csv时,每个记录后都有一个额外的空白行! 有没有办法让它不能把一个额外的空白行?

如何在Python 2中发送HEAD HTTP请求?

我在这里要做的是得到一个给定的网址头,所以我可以确定MIME类型。 我希望能够看到http://somedomain/foo/将返回一个HTML文档或JPEG图像为例。 因此,我需要弄清楚如何发送HEAD请求,以便我可以读取MIME类型,而无需下载内容。 有没有人知道这样做的简单方法?

将列表中的项目连接到字符串

有一个更简单的方法来连接列表中的字符串项目为单个字符串? 我可以使用str.join()函数来加入列表中的项目吗? 例如,这是输入['this','is','a','sentence'] ,这是所需的输出this-is-a-sentence sentence = ['this','is','a','sentence'] sent_str = "" for i in sentence: sent_str += str(i) + "-" sent_str = sent_str[:-1] print sent_str

Python:分割字符串与多个分隔符

我在网上找到了一些答案,但我没有正则表达式的经验,我相信这是在这里需要的。 我有一个字符串,需要拆分';' 或','也就是说,它必须是分号或逗号,后面跟一个空格。 没有尾随空格的单个逗号应该保持不变 示例字符串: "b-staged divinylsiloxane-bis-benzocyclobutene [124221-30-3], mesitylene [000108-67-8]; polymerized 1,2-dihydro-2,2,4- trimethyl quinoline [026780-96-1]" 应分成一个列表,其中包含以下内容: ('b-staged divinylsiloxane-bis-benzocyclobutene [124221-30-3]' , 'mesitylene [000108-67-8]', 'polymerized 1,2-dihydro-2,2,4- trimethyl quinoline [026780-96-1]')

像一个属性访问字典键?

我觉得更方便的访问字典键为obj.foo而不是obj['foo'] ,所以我写了这个片段: class AttributeDict(dict): def __getattr__(self, attr): return self[attr] def __setattr__(self, attr, value): self[attr] = value 不过,我认为Python必须有一些原因不能提供这种功能。 以这种方式访问​​字典键的警告和缺陷是什么?

为什么Python的原始字符串文字不能以单个反斜杠结束?

从技术上讲,任何奇数的反斜杠,如文档中所述 。 >>> r'\' File "<stdin>", line 1 r'\' ^ SyntaxError: EOL while scanning string literal >>> r'\\' '\\\\' >>> r'\\\' File "<stdin>", line 1 r'\\\' ^ SyntaxError: EOL while scanning string literal 看起来解析器可能只是将原始字符串中的反斜杠视为常规字符(是不是原始字符串是关于什么?),但我可能错过了一些明显的东西。 TIA!

删除从另一个列表中出现的所有元素

假设我有两个列表, l1和l2 。 我想执行l1 – l2 ,它返回l1中的所有元素,而不是l2 。 我可以想到一个天真的循环方法来做到这一点,但这将是非常低效的。 什么是pythonic和有效的方式做到这一点? 举个例子,如果我有l1 = [1,2,6,8] and l2 = [2,3,5,8] , l1 – l2应该返回[1,6]

只读特定行(Python)

我正在使用for循环来读取文件,但我只想读取特定的行,比如说第26行和第30行。 有没有内置功能来实现这一点? 谢谢

Python正常参数与关键字参数

“关键字参数”与常规参数有什么不同? 不能所有的参数传递为name=value而不是使用位置语法?

我如何从Python日期中减去一天?

我有一个Python的datetime.datetime对象。 减去一天的最好方法是什么?