【发布时间】:2020-01-12 11:13:15
【问题描述】:
到目前为止我的代码:
import os
root = os.listdir("/path/to/dir")
pic_dir = {}
len_wallpaper = int((24 / (len(root))))
for i in range(24):
if i<10 :
pic_dir[(f"{0}{i}")] = root[0]
else:
pic_dir[i] = root[0]
print(pic_dir)
当前输出:
{'00': 'file_1', '01': 'file_1', '02': 'file_1', ... '23': 'file1'}
到目前为止这很好,但我真正想要的是循环文件 n 次,因此它们将添加到列表 n 次,然后移动到下一个文件。所以更像这样:
{'00': 'file_1', '01': 'file_1', '02': 'file_1', ...
'07': 'file2', '08': 'file2', ...
'22': 'file4', '23': 'file4'}
该目录将保存图片,我的最终目标是创建某种随时间变化的动态壁纸。
'len_wallpaper' 计算文件需要通过此循环运行的次数。
这可以通过使用某种嵌套循环来完成吗?
【问题讨论】:
-
不太清楚,所以
root目录是文件列表,对吧?为什么需要嵌套? -
我已经稍微编辑了我的问题,我希望这能让我更清楚地了解我的最终目标。
-
我不明白,你的代码中的
int((24 / (len(root))))有意义吗? -
所以这是壁纸转换之间的时间间隔。那么
24的单位是什么?分钟还是秒? -
我觉得这个设计从一开始就有缺陷,你为什么不把壁纸的所有文件名放到一个列表中,随着时间的推移循环遍历列表?
标签: python python-3.x dictionary