gpt4 book ai didi

具有不同参数的 Python 线程 (Python 2.4.3)

转载 作者:行者123 更新时间:2023-12-04 19:37:50 25 4
gpt4 key购买 nike

我正在学习 python 中的线程和并发部分,我选择了一个示例,我在其中执行 os.walk()要从目录中获取文件列表,请使用 os.path.join() 将其填充到数组中然后使用线程来更改这些文件的所有权。这个脚本的目的是学习线程。我的代码是

for root, dir, file in os.walk("/tmpdir/"):
for name in file:
files.append(os.path.join(root, name))

def filestat(file):
print file ##The code to chown will go here. Writing it to just print the file for now.

thread = [threading.Thread(target=filestat, args="filename") for x in range(len(files))]
print thread ##This will give me the total number of thread objects that is created
for t in thread:
t.start() ##This will start the thread execution

这将在执行 len(files) 时打印“文件名”次。但是,我想将列表文件中的文件名作为参数传递给函数。我应该怎么办?

最佳答案

您应该在 args 中使用您正在迭代的变量名。争论。不要忘记将其设为元组。

thread = [threading.Thread(target=filestat, args=(files[x],)) for x in range(len(files))]

或者
thread = [threading.Thread(target=filestat, args=(filename,)) for filename in files]

关于具有不同参数的 Python 线程 (Python 2.4.3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32975156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com