小编Dan*_*den的帖子

子进程cp返回错误 - bufsize必须是整数

我正在尝试从一个目录复制到另一个目录,并通过调用'cp'同时重命名它们,如下所示:

directories = ['/Users/Me/Folder1/File1.txt', '/Users/Me/Folder/File2.txt']
output = ['/Users/Me/Folder2/Hello.txt', 'Users/Me/Folder2/World.txt'] 
for in, out, in zip(directories, output):
    subprocess.call('cp', in, out)
Run Code Online (Sandbox Code Playgroud)

但它返回:

 File "./test.py", line 33, in <module>
    subprocess.call('cp', in, out)
  File "/usr/local/Cellar/python/2.7.10_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 522, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/usr/local/Cellar/python/2.7.10_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 659, in __init__
    raise TypeError("bufsize must be an integer")
TypeError: bufsize must be an integer
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

python subprocess copy cp python-2.7

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

如何在 Python 中根据用户指定目录中的文件名创建列表?

我想根据用户定义目录中的文件名在 Python 中创建一个新列表。

我无法完全理解 wiki 中的子进程语法,并且一些使用 PIPE 的命令似乎不被鼓励。

所以我会提示定义从哪个目录加载:

directory = raw_input("Path to directory: ")

然后subprocess.check_output(["ls", "*eg*.txt"])在指定目录中运行并将输出放入list1.

python subprocess list raw-input

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

将列表项添加到另一个列表中项的末尾

我有:

foo = ['/directory/1/', '/directory/2']
bar = ['1.txt', '2.txt']
Run Code Online (Sandbox Code Playgroud)

我想要:

faa = ['/directory/1/1.txt', '/directory/2/2.txt']
Run Code Online (Sandbox Code Playgroud)

我似乎只能调用尝试向列表添加字符串的操作,这会导致类型错误.

python list-comprehension list

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