Python 读取命令行参数
时间: 2024-08-16 18:04:18 浏览: 100
在Python中,你可以通过`sys`模块来读取命令行传递给程序的参数。当你运行Python脚本时,可以像这样指定额外的参数:
```python
import sys
# 获取命令行参数列表
args = sys.argv
# 第一个元素是脚本名称,从索引1开始获取实际参数
first_arg = args
second_arg = args if len(args) > 2 else None
print("First argument:", first_arg)
print("Second argument (if provided):", second_arg)
#
相关问题
Python读取命令行参数
在 Python 中,命令行参数(也称为命令行参数或命令行输入)可以通过 `sys` 模块中的 `argv` 变量来获取。`argv` 是一个包含命令行参数的列表,其中第一个元素是程序名,后续元素是用户在命令行中提供的参数。
以下是一个简单的示例,演示如何读取和处理命令行参数:
```python
import sys
# 获取命令行参数
if len(sys.argv) > 1:
# 如果有参数,打印它们
for arg in sys.argv[1:]:
print(f"命令行参数: {arg}")
else:
# 如果没有参数,显示提示信息
print("请输入命令行参数。")
```
在这个例子中,如果有额外的命令行参数传递给程序,它们会被逐一打印出来。如果没有参数,会显示一条说明消息。
python通过命令行参数上传文件,实现json和csv转换
你可以使用Python内置的argparse模块来解析命令行参数,使用标准库中的csv和json模块来处理CSV和JSON文件的转换。以下是一个示例代码:
```python
import argparse
import csv
import json
# 创建命令行参数解析器
parser = argparse.ArgumentParser(description='Convert CSV to JSON or JSON to CSV')
parser.add_argument('file', help='CSV or JSON file to convert')
parser.add_argument('output', help='Output file name')
parser.add_argument('--csv-to-json', action='store_true', help='Convert CSV to JSON')
parser.add_argument('--json-to-csv', action='store_true', help='Convert JSON to CSV')
# 解析命令行参数
args = parser.parse_args()
# 判断转换类型
if args.csv_to_json:
# 读取CSV文件
with open(args.file, 'r') as csv_file:
# 读取CSV文件内容,并转换为字典列表
csv_data = [dict(row) for row in csv.DictReader(csv_file)]
# 将字典列表转换为JSON格式
json_data = json.dumps(csv_data, indent=4)
# 将JSON数据写入到输出文件
with open(args.output, 'w') as json_file:
json_file.write(json_data)
elif args.json_to_csv:
# 读取JSON文件
with open(args.file, 'r') as json_file:
# 读取JSON文件内容
json_data = json.load(json_file)
# 获取CSV列名
headers = list(json_data[0].keys())
# 创建CSV写入器
csv_writer = csv.DictWriter(open(args.output, 'w'), fieldnames=headers)
# 写入CSV列名
csv_writer.writeheader()
# 写入CSV数据
for row in json_data:
csv_writer.writerow(row)
else:
print('Please specify a conversion type: --csv-to-json or --json-to-csv')
```
可以通过以下命令行参数运行代码:
```bash
python convert.py input.csv output.json --csv-to-json
python convert.py input.json output.csv --json-to-csv
```
其中,`input.csv`和`input.json`是要转换的文件名,`output.json`和`output.csv`是输出文件名,`--csv-to-json`和`--json-to-csv`是转换类型参数。
阅读全文