Python 将文件重命名为文件夹名称的脚本
Python script to rename a file to the folder name
我正在制作一个 python 脚本来将文件夹中的文件名更改为文件夹的同名文件。
例如,如果文件夹名为 TestFolder,文件夹中的 txt 文件名为 test,则脚本将使文件名为 TestFolder.txt.
但是,如何使脚本在其所在目录之外工作?
下面是我到目前为止的代码,我希望我解释得足够好。
import os
temp = os.path.dirname(os.path.realpath(__file__))
src = "{temp}\".format(temp=temp)
def renamer():
path = os.path.dirname(src)
folder = os.path.basename(path)
os.rename("{directory}\{file}".format(directory=src, file=listDir()),
"{directory}\{file}.txt".format(directory=src, file=folder))
def listDir():
for file in os.listdir(src):
if file.endswith(".txt"):
return file
def main():
print("Hello World")
print(listDir())
renamer()
print(listDir())
if __name__ == "__main__":
main()
您的问题是您在将脚本位置指定为重命名路径时遇到了一些麻烦:
temp = os.path.dirname(os.path.realpath(__file__))
src = "{temp}\".format(temp=temp)
def renamer():
path = os.path.dirname(src)
folder = os.path.basename(path)
解决方案很简单:如果您不希望脚本的位置为 path/folder,则不要这样做。把你想要的放在它的位置。在执行位置使用cwd
(当前工作目录)重命名;否则,重新编码您的程序以接受文件夹名称作为输入。这些中的任何一个都可以通过许多在线示例轻松获得。
我正在制作一个 python 脚本来将文件夹中的文件名更改为文件夹的同名文件。 例如,如果文件夹名为 TestFolder,文件夹中的 txt 文件名为 test,则脚本将使文件名为 TestFolder.txt.
但是,如何使脚本在其所在目录之外工作? 下面是我到目前为止的代码,我希望我解释得足够好。
import os
temp = os.path.dirname(os.path.realpath(__file__))
src = "{temp}\".format(temp=temp)
def renamer():
path = os.path.dirname(src)
folder = os.path.basename(path)
os.rename("{directory}\{file}".format(directory=src, file=listDir()),
"{directory}\{file}.txt".format(directory=src, file=folder))
def listDir():
for file in os.listdir(src):
if file.endswith(".txt"):
return file
def main():
print("Hello World")
print(listDir())
renamer()
print(listDir())
if __name__ == "__main__":
main()
您的问题是您在将脚本位置指定为重命名路径时遇到了一些麻烦:
temp = os.path.dirname(os.path.realpath(__file__))
src = "{temp}\".format(temp=temp)
def renamer():
path = os.path.dirname(src)
folder = os.path.basename(path)
解决方案很简单:如果您不希望脚本的位置为 path/folder,则不要这样做。把你想要的放在它的位置。在执行位置使用cwd
(当前工作目录)重命名;否则,重新编码您的程序以接受文件夹名称作为输入。这些中的任何一个都可以通过许多在线示例轻松获得。