小编Pet*_*sen的帖子

将相同的字符串附加到Python中的字符串列表中

我试图获取一个字符串,并将其附加到列表中包含的每个字符串,然后有一个包含已完成字符串的新列表.例:

list = ['foo', 'fob', 'faz', 'funk']
string = 'bar'

*magic*

list2 = ['foobar', 'fobbar', 'fazbar', 'funkbar']
Run Code Online (Sandbox Code Playgroud)

我尝试了循环,尝试列表理解,但它是垃圾.一如往常,任何帮助,非常感谢.

python list

160
推荐指数
7
解决办法
15万
查看次数

在python中使用%运算符的%s的可变长度

我正在尝试这样做:

max_title_width = max([len(text) for text in columns])

for column in columns:
    print "%10s, blah" % column
Run Code Online (Sandbox Code Playgroud)

但是我想要替换它10的值max_title_width.我怎么用最pythonic的方式做到这一点?

python

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

将csv数据转换为dict的最佳方法

我有csv文件包含以下数据

val1,val2,val3
1,2,3
22,23,33
Run Code Online (Sandbox Code Playgroud)

那么如何将数据转换为dict

dict1 = { 'val1': 1, 'val2': 2, 'val3': 3}
dict2 = { 'val1': 22, 'val2': 23, 'val3': 33}
fp = open('file.csv', 'r')
reader = csv.reader(fp)
for row in reader:
    ????
Run Code Online (Sandbox Code Playgroud)

谢谢

python csv

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

为什么正则表达式"([az])((?!\\ 1)[az])"在C++ 11中匹配字符串"aa"?

确实在跑

regex pattern("([a-z])((?!\\1)[a-z])");
cout << regex_match("aa", pattern) << endl;
Run Code Online (Sandbox Code Playgroud)

导致输出"1",但匹配的第一组是"a",如果相反,我运行

regex pattern("([a-z])((?!a)[a-z])");
cout << regex_match("aa", pattern) << endl;
Run Code Online (Sandbox Code Playgroud)

我按预期得到"0".

请注意,完全相同的正则表达式在Python 3中的工作方式正常,即运行

re.match("([a-z])((?!\\1)[a-z])", "aa")
Run Code Online (Sandbox Code Playgroud)

不产生任何匹配.有人能解释一下这里发生了什么吗?

仅供参考,我使用带有标志-O2和-std = c ++ 11的g ++(tdm64-1)5.1.0.

c++ regex c++11

18
推荐指数
1
解决办法
879
查看次数

为什么sys.modules中有虚拟模块?

导入标准的"日志记录"模块会使用一堆虚拟条目污染sys.modules:

Python 2.5.4 (r254:67916, Dec 23 2008, 15:10:54) [MSC v.1310 32 bit (Intel)] on win32
>>> import sys
>>> import logging
>>> sorted(x for x in sys.modules.keys() if 'log' in x)
['logging', 'logging.atexit', 'logging.cStringIO', 'logging.codecs', 
'logging.os', 'logging.string', 'logging.sys', 'logging.thread', 
'logging.threading', 'logging.time', 'logging.traceback', 'logging.types']

# and perhaps even more surprising:
>>> import traceback
>>> traceback is sys.modules['logging.traceback']
False
>>> sys.modules['logging.traceback'] is None
True
Run Code Online (Sandbox Code Playgroud)

因此,导入此包会将额外的名称添加到sys.modules中,除了它们不是模块,只是对None的引用.其他模块(例如xml.dom和编码)也有这个问题.为什么?

编辑:基于bobince的答案,有描述原点的页面(请参阅"sys.modules中的虚拟条目"部分)和该功能的未来.

python import

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

多处理启动了太多的Python VM实例

我正在编写一些多处理代码(Python 2.6.4,WinXP),它生成运行后台任务的进程.在玩一些简单的例子时,我遇到了一个问题,我的代码只是不断产生新的进程,即使我只是告诉它产生一个固定的数字.

程序本身运行正常,但如果我查看Windows TaskManager,我会看到新的'python.exe'进程出现.随着程序的运行,它们会越来越多地产生(最终使我的机器挨饿).


例如,
我希望下面的代码启动2个python.exe进程.第一个是程序本身,第二个是它产生的子进程.知道我做错了什么吗?

import time
import multiprocessing


class Agent(multiprocessing.Process):
    def __init__(self, i):
        multiprocessing.Process.__init__(self)
        self.i = i

    def run(self):
        while True:
            print 'hello from %i' % self.i
            time.sleep(1)


agent = Agent(1)
agent.start()
Run Code Online (Sandbox Code Playgroud)

python windows multiprocessing

14
推荐指数
1
解决办法
4856
查看次数

在python中拆分一个字符串

所有,

我在python中有一个字符串说 a="Show details1\nShow details2\nShow details3\nShow details4\nShow details5\n"

我们如何用分隔符\n(换行符)拆分上面的内容.

结果应该是 ['Show details1', 'Show details2', ..., 'Show details5']

python string

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

在python中,如果文件以特定字母集开头,如何从循环中排除文件?

我正在编写一个Python脚本,它通过一个目录并收集某些文件,但是有一些我想要排除的文件都是以相同的方式开始的.

示例代码:

for name in files:
   if name != "doc1.html" and name != "doc2.html" and name != "doc3.html":
      print name
Run Code Online (Sandbox Code Playgroud)

假设目录中有100个HTML文件都以'doc'.排除它们最简单的方法是什么?

对不起,我是Python的新手,我知道这可能是基本的.

提前致谢.

python string

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

Hudson"源代码不可用".

我正在使用Hudson来不断构建一个Python项目.单元测试和代码覆盖率工作得很好,但是在为Cobertura覆盖率报告钻取单元测试的文件时会出现此消息:

Source code is unavailable.Some possible reasons are:

* This is not the most recent build (to save on disk space, this plugin only keeps the most recent builds source code).
* Cobertura found the source code but did not provide enough information to locate the source code.
* Cobertura could not find the source code, so this plugin has no hope of finding it.
Run Code Online (Sandbox Code Playgroud)

奇怪的是找到并显示单元测试的源代码.我试图手动将其他.py文件的源文件复制到~/.hudson/jobs/<projectname>/cobertura(单元测试被复制的地方),但它不起作用.

有什么建议?

python continuous-integration code-coverage hudson cobertura

11
推荐指数
3
解决办法
4495
查看次数

Py2exe:在没有GUI界面的情况下编译Web服务器时是否需要清单文件和w9xpopen.exe?

我正在使用Py2exe在Windows 7 Pro(64位)上使用Python 2.6(32位)编译CherryPy(3.1)服务器.

此服务器将在没有GUI的情况下运行.

问题:

  1. 如果在没有GUI的情况下运行,我是否需要关注为此应用程序添加清单文件?

  2. 我需要在我的exe中包含w9xpopen.exe吗?

到目前为止,我的有限测试表明我不需要在我的可执行文件中包含清单文件或w9xpopen.exe以使其正常工作.

评论赞赏.

谢谢你,马尔科姆

python windows py2exe cherrypy

10
推荐指数
1
解决办法
9907
查看次数