在这种情况下如何重命名多个文件 .jpg?
How to rename multiple files in this case .jpg?
我正在尝试将几个“.jpg”的文件名更改为自定义名称后跟数字。所以它看起来像这样:Name1.jpg; Name2.jpg; Name3.jpg
它没有将当前名称更改为新名称的问题。目录是正确的。
图片:https://imgur.com/a/qBgQOga
教程来源:https://www.geeksforgeeks.org/rename-multiple-files-using-python/
我在 Windows 10 64 位
上使用 Python3
我以四种不同的方式尝试了 dir
。
1. os.listdir('C:/Users/Inty/Desktop/test'):
2. os.listdir('C://Users//Inty//Desktop//test'):
3. os.listdir('C:\Users\Inty\Desktop\test'):
4. os.listdir('C:\Users\Inty\Desktop\test'):
5. os.listdir('C:/Users/Inty/Desktop/test/'):
也玩过dst = '.jpg' to '.JPG'
,不过好像没什么区别。
# Imports
import os
# Functions
def main():
i = 0
for filename in os.listdir('C:/Users/Inty/Desktop/test'):
dst = 'Name' + str(i) + '.JPG'
src = 'C:/Users/Inty/Desktop/test' + filename
dst = 'C:/Users/Inty/Desktop/test' + dst
os.rename(src, dst)
i += 1
if __name__ == '__main__':
main()
Process finished with exit code 0
你少了一个斜杠。也许你想要:
src = 'C:/Users/Inty/Desktop/test/' + filename
dst = 'C:/Users/Inty/Desktop/test/' + dst
更好的方法是使用 os.path.join
:
src = os.path.join('C:/Users/Inty/Desktop/test', filename)
已解决
我稍微修改了代码。主要原因是因为我在 for
循环中有 if __name__ == '__main__':
。
这使得 if
在函数内部。
import os
# Functions
PATH = 'C:\Users\Inty\Desktop\test'
def main():
i = 0
for filename in os.listdir(PATH):
dst = 'Name' + str(i) + '.JPG'
src = os.path.join(PATH, filename)
dst = os.path.join(PATH, dst)
os.rename(src, dst)
i += 1
if __name__ == '__main__':
main()
我正在尝试将几个“.jpg”的文件名更改为自定义名称后跟数字。所以它看起来像这样:Name1.jpg; Name2.jpg; Name3.jpg
它没有将当前名称更改为新名称的问题。目录是正确的。
图片:https://imgur.com/a/qBgQOga
教程来源:https://www.geeksforgeeks.org/rename-multiple-files-using-python/
我在 Windows 10 64 位
上使用 Python3我以四种不同的方式尝试了 dir
。
1. os.listdir('C:/Users/Inty/Desktop/test'):
2. os.listdir('C://Users//Inty//Desktop//test'):
3. os.listdir('C:\Users\Inty\Desktop\test'):
4. os.listdir('C:\Users\Inty\Desktop\test'):
5. os.listdir('C:/Users/Inty/Desktop/test/'):
也玩过dst = '.jpg' to '.JPG'
,不过好像没什么区别。
# Imports
import os
# Functions
def main():
i = 0
for filename in os.listdir('C:/Users/Inty/Desktop/test'):
dst = 'Name' + str(i) + '.JPG'
src = 'C:/Users/Inty/Desktop/test' + filename
dst = 'C:/Users/Inty/Desktop/test' + dst
os.rename(src, dst)
i += 1
if __name__ == '__main__':
main()
Process finished with exit code 0
你少了一个斜杠。也许你想要:
src = 'C:/Users/Inty/Desktop/test/' + filename
dst = 'C:/Users/Inty/Desktop/test/' + dst
更好的方法是使用 os.path.join
:
src = os.path.join('C:/Users/Inty/Desktop/test', filename)
已解决
我稍微修改了代码。主要原因是因为我在 for
循环中有 if __name__ == '__main__':
。
这使得 if
在函数内部。
import os
# Functions
PATH = 'C:\Users\Inty\Desktop\test'
def main():
i = 0
for filename in os.listdir(PATH):
dst = 'Name' + str(i) + '.JPG'
src = os.path.join(PATH, filename)
dst = os.path.join(PATH, dst)
os.rename(src, dst)
i += 1
if __name__ == '__main__':
main()