如何进入 python 中作为命令行参数给出的文件夹
How to enter into the folder given as a command line argument in python
我想打开在 python 文件中作为命令行参数给出的文件夹,如 test.py folder1 然后打印所有该文件夹中的文件名。还有,test.py和folder1不在同一个目录下。
我卡在需要进入作为 arg 传递的文件夹的部分。
import os
filename = sys.srgv[1]
os.chdir("/home/all_folder")
folder= os.listdir()
if filename in folder:
...
您可以将文件夹作为参数提供给 os.listdir,这样您就不必使用 os.chdir 来更改当前目录。下面是一个示例程序,它将文件夹作为第一个命令行参数,并打印该文件夹中的文件:
import os
import sys
folder = sys.argv[1]
folder_content = os.listdir(folder)
for filename in folder_content:
print(filename)
用法示例:python test.py /home/my_username/somefolder
尝试使用完整路径
from os import listdir
from os.path import isfile, join
mypath = "C:/Users/fullpath"
onlyfiles = [f for f in listdir(mypath) if isfile(join(mypath, f))]
print(onlyfiles)
我想打开在 python 文件中作为命令行参数给出的文件夹,如 test.py folder1 然后打印所有该文件夹中的文件名。还有,test.py和folder1不在同一个目录下。
我卡在需要进入作为 arg 传递的文件夹的部分。
import os
filename = sys.srgv[1]
os.chdir("/home/all_folder")
folder= os.listdir()
if filename in folder:
...
您可以将文件夹作为参数提供给 os.listdir,这样您就不必使用 os.chdir 来更改当前目录。下面是一个示例程序,它将文件夹作为第一个命令行参数,并打印该文件夹中的文件:
import os
import sys
folder = sys.argv[1]
folder_content = os.listdir(folder)
for filename in folder_content:
print(filename)
用法示例:python test.py /home/my_username/somefolder
尝试使用完整路径
from os import listdir
from os.path import isfile, join
mypath = "C:/Users/fullpath"
onlyfiles = [f for f in listdir(mypath) if isfile(join(mypath, f))]
print(onlyfiles)