Python学习杂记_8_从程序外部传参的办法sys.argv

Python用 sys.argv[] 实现从程序外部传参

“外部”的含义,其实就是这些参数不是你在程序中定义的,而是在程序之外通过输入操作传递进来的。sys.argv 会返回一个元组,元组的首个元素即sys.argv[0]是程序本身,第二个元素之后依次是我们通过输入来指定的各个参数。既然是元组,就说明这些参数是有序且不可变的,当然可以用下标来引用该元组的每个元素,也就是你输入的每个参数,来实现参数的传递。

 

举个栗子

''' 写一个修改文件的程序,要求从外部传入三个参数:要被修改的文件名,将被修改的字符串,要修改成的字符串。
'''

import sys
import os
print("这是个修改文件的程序".center(50,'*'))
a = sys.argv
# print(a[1:])
with open(a[1],'a+') as f1,open('uuu.txt','a+') as f2:
for line in f1:
if line.strip()==a[2]:
f2.write(a[3]+'\n')
print("已经用%s替换了%s" % (a[3], a[2]))
else:
f2.write(line)
os.remove('uu.txt')
os.rename('uuu.txt','uu.txt')
 

注意:这段代码要用命令行来执行,如果是PyCharm调试的话用Terminal来运行程序。

如果对外部传参还是不清楚的话,可以参考这篇博客: http://www.cnblogs.com/aland-1415/p/6613449.html

 

转载于:https://www.cnblogs.com/houzhizhe/p/6928574.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值