我有一个程序,可以获取带有raw_input()
的国家/地区的代码,然后根据它发送电子邮件。
我的代码是:
import pandas as pd
import pymysql
import sys
data=pd.read_CVS("filename")
country=raw_input("country name : ")
print("country name is :",sys.argv[1])
for index in data['emailid']:
mail= index.split('@')[1]
if(country == 'US'):
if (mail=='yahoo.com'):
print index
elif(country == 'UK'):
if(mail=='yahoo.com' or mail=='yahoo.co.uk'):
print index
我想更改它以将国家/地区代码作为命令行参数输入发送。
例:
python programname.py 'UK'
以及相关的电子邮件 ID 作为输出。
你应该尝试argparse模块,
import argparse
parser = argparse.ArgumentParser(description='Example with non-optional arguments')
parser.add_argument('country')
args = parser.parse_args()
country = args.country
raw_input
从标准输入中读取,而sys.argv
是命令行参数的列表。因此,如果要使用命令行传入国家/地区代码,只需删除包含raw_input
的行,然后country
sys.argv[1]
。