python - 将路径解析为python脚本中的参数
问题描述
这是 python 脚本的一部分xyz.py
。
#!/usr/bin/env python
from openpyxl import Workbook
import os
wb = Workbook()
path = "/home/Final_analysis/"
#print(os.listdir())
lis = os.listdir(path)
我想将此脚本与存储在不同目录中的不同输入文件一起使用。为了让这个脚本在多个文件上运行,我每次都必须更改脚本的这一部分。
path= "/home/Final_analysis/"
例如,我可以在 python 脚本之后将路径解析为参数吗
xyz.py path_to_my_file
在命令中,以便每次我不必更改脚本?
写入sys.argv[1]
路径后,我尝试按上述方式运行脚本
#!/usr/bin/env python
from openpyxl import Workbook
import os
wb = Workbook()
path = "sys.argv[1]"
#print(os.listdir())
lis = os.listdir(path)
并运行命令xyz.py /home/final_analysis
但它仍然没有检测到路径。我收到以下错误
Traceback (most recent call last):
File "combine_excel.py", line 8, in <module>
lis = os.listdir(path)
OSError: [Errno 2] No such file or directory: 'sys.argv[1]'
我在 python 2.7.6 中使用。
解决方案
不要sys.argv[1]
作为字符串传递,直接使用:path = sys.argv[1]
#!/usr/bin/env python
from openpyxl import Workbook
import os
import sys
wb = Workbook()
path = sys.argv[1]
#print(os.listdir())
lis = os.listdir(path)
(根据 zwer 对该问题的评论。)
推荐阅读
- android - 启动对话活动和重新创建活动时未调用 OnActivityResult
- gitlab - 没有 GitLab 本地安装的 GitLab 运行器
- android - 在 AsyncTask for android 中更改模板 progressDialog
- javascript - 哪些 HTML5 元素具有 onload/“load 事件”?
- html - 如何在 CSS 中保持所有窗口大小的位置和大小?
- android - One Signal Android 处理静音通知
- javascript - 获得任何给定值的 25%
- php - 在 Woocommerce 订阅中获取订阅计划的活跃成员列表
- python - Python中的并行CPU总和
- r - 与传单地图结合使用时,在启动应用程序时不渲染