我在python中创建了一个脚本,它读取excel文件并计算日期,现在我想用以下命令执行它:
python your_script.py ./path/to/transactions.csv
我的python脚本文件代码:
import csv
def csv_data(path):
with open(path) as csv_file:
readCSV = csv.DictReader(csv_file)
for line in readCSV:
col_from = line['from']
col_to = line['to']
col_ammount = line['amount']
from_amount = int(float(col_ammount.lstrip('$').replace(',', ''))) - int(
float(col_ammount.lstrip('$').replace(',', '')))
to_amount = 0 + int(float(col_ammount.lstrip('$').replace(',', '')))
print(col_from, '$'+str(from_amount), col_to, '$'+str(to_amount))
csv_data('transactions.csv')
答案 0 :(得分:1)
您需要sys库,然后可以使用sys.argv [1]访问该参数。
import sys
csv_data(sys.argv[1])
答案 1 :(得分:0)
import csv
import argparse
ap = argparse.ArgumentParser()
ap.add_argument("-f", "--file", required = True,
help = "path of .csv file is stored")
args = vars(ap.parse_args())
file = joblib.load(args["file"])
def csv_data(path):
with open(path) as csv_file:
readCSV = csv.DictReader(csv_file)
for line in readCSV:
col_from = line['from']
col_to = line['to']
col_ammount = line['amount']
from_amount = int(float(col_ammount.lstrip('$').replace(',', ''))) - int(
float(col_ammount.lstrip('$').replace(',', '')))
to_amount = 0 + int(float(col_ammount.lstrip('$').replace(',', '')))
print(col_from, '$'+str(from_amount), col_to, '$'+str(to_amount))
csv_data('transactions.csv')
打开CMD并撰写python your_script.py --file path/file.csv
让我知道。我也是新人,但我正在努力学习..