python - 如何为目录中的每个文件添加随机数? (初学者)

标签 python

我的文件中有 10 个图像,我想使用添加到现有文件名中的 10 到 99 之间的随机数字来重命名它们。

例如:

FileA.jpg > 45FileA.jpg

FileB.jpg > 22FileB.jpg

以下说法不正确。如何在此函数中将随机整数转换为字符串?

def random_rename():

    file_list = os.listdir(r"C:\Users\Directory\Desktop\prank\My_Message")

    for file_name in file_list: 
        os.rename(file_name, str(random.randint(10,99)) + file_name)

最佳答案

正如评论者提到的,os.listdir 不会返回绝对路径,因此您需要将它们与您的实际路径连接

尝试:

def random_rename():
    path = r"C:\Users\Directory\Desktop\prank\My_Message"
    file_list = os.listdir(path)
    for file_name in file_list: 
        old_name = os.path.join(path, file_name)
        new_name = os.path.join(path, str(random.randint(10,99)) + file_name)
        os.rename(old_name, new_name)

关于python - 如何为目录中的每个文件添加随机数? (初学者),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42016212/

相关文章:

python 3.3、2.7 和 2.6 - 基准测试结果不一致。怎么修?

python - 在 PyOpenGL 中切换 Y 轴和 Z 轴

python - 使用 python 2.7 和 XML 元素树选择 XML 中具有特定元素值的节点

python - 如何在包含列表的列上使用 .loc?

Python:动画 3D 散点图变慢

python - 如何在 Django 中进行 ajax 分页?

python - 如何使用 python 比较一张图像和许多其他图像之间的 SSIM?

python - Pandas:合并(或内部联接)两个数据帧,但仅保留一个数据帧中的列

python - 重新索引多索引的问题

python - 乘法 tf.range() 的优雅方式