小编Sil*_*ost的帖子

如何使用Python将整个文件目录复制到现有目录中?

从包含名为bar(包含一个或多个文件)的目录和名为baz(还包含一个或多个文件)的目录的目录中运行以下代码.确保没有名为的目录foo.

import shutil
shutil.copytree('bar', 'foo')
shutil.copytree('baz', 'foo')
Run Code Online (Sandbox Code Playgroud)

它将失败:

$ python copytree_test.py 
Traceback (most recent call last):
  File "copytree_test.py", line 5, in <module>
    shutil.copytree('baz', 'foo')
  File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/shutil.py", line 110, in copytree
  File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/os.py", line 172, in makedirs
OSError: [Errno 17] File exists: 'foo'
Run Code Online (Sandbox Code Playgroud)

我希望它的工作方式与我输入的方式相同:

$ mkdir foo
$ cp bar/* foo/
$ cp baz/* foo/
Run Code Online (Sandbox Code Playgroud)

我是否需要使用shutil.copy()将每个文件复制bazfoo?(之后我已经将'bar'的内容复制到'foo'中shutil.copytree()?)或者是否有更简单/更好的方法?

python shutil copytree

182
推荐指数
6
解决办法
21万
查看次数

包含setup.py的非Python文件

如何制作setup.py包含不属于代码的文件?(具体来说,它是一个许可证文件,但它可能是任何其他东西.)

我希望能够控制文件的位置.在原始源文件夹中,该文件位于包的根目录中.(即与最顶层处于同一级别__init__.py.)我希望它在安装软件包时保持完全无论操作系统如何.我怎么做?

python distutils

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

如何将python日期时间转换为字符串,具有可读格式的日期?

t = e['updated_parsed']
dt = datetime.datetime(t[0],t[1],t[2],t[3],t[4],t[5],t[6]
print dt
>>>2010-01-28 08:39:49.000003
Run Code Online (Sandbox Code Playgroud)

如何将其转换为字符串?:

"January 28, 2010"
Run Code Online (Sandbox Code Playgroud)

python datetime string-formatting

163
推荐指数
6
解决办法
30万
查看次数

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

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

Python3的"功能注释"有什么用处

功能注释:PEP-3107

我跑过一段代码,展示了Python3的功能注释.这个概念很简单,但我想不出为什么这些在Python3中实现或者对它们有任何好用.也许SO可以启发我吗?

这个怎么运作:

def foo(a: 'x', b: 5 + 6, c: list) -> max(2, 9):
    ... function body ...
Run Code Online (Sandbox Code Playgroud)

参数后面后面的所有内容都是"注释",后面的信息->是函数返回值的注释.

foo.func_annotations将返回一个字典:

{'a': 'x',
 'b': 11,
 'c': list,
 'return': 9}
Run Code Online (Sandbox Code Playgroud)

有这个有什么意义?

python annotations function python-3.x

154
推荐指数
6
解决办法
4万
查看次数

如何从Python集中选择2个随机项?

我目前有一个n大小的Python集,其中n> = 0.是否有快速的1或2行Python解决方案来做到这一点?例如,该集合将如下所示:

fruits = set(['apple', 'orange', 'watermelon', 'grape'])
Run Code Online (Sandbox Code Playgroud)

目标是从上面选择2个随机项目,上述集合可能包含0个,1个或更多项目.我能想到的唯一方法是将集合转换为列表(可变),从中可以访问集合长度内的2个随机唯一索引.

python random

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

145
推荐指数
7
解决办法
12万
查看次数

在python中使用参数列表调用函数

我试图在python中调用另一个函数内的函数,但找不到正确的语法.我想做的是这样的:

def wrapper(func, args):
    func(args)

def func1(x):
    print(x)

def func2(x, y, z):
    return x+y+z

wrapper(func1, [x])
wrapper(func2, [x, y, z])
Run Code Online (Sandbox Code Playgroud)

在这种情况下,第一个呼叫将起作用,第二个呼叫不起作用 我想要修改的是包装函数而不是被调用的函数.

python function

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

来自python的诞生日期

我怎样才能从今天的日期和一个人的出生日期中找到蟒蛇的年龄?birthdate来自Django模型中的DateField.

python datetime date

142
推荐指数
8
解决办法
13万
查看次数