#修改文件
with open('hello',encoding='utf=8') as f1,open('hello.bak','w',encoding="utf=8") as f2:
for line in f1:
if '好' in line:
line =line.replace('你','我')
f2.write(line)
import os
os.remove('hello')
os.rename('hello.bak','hello')
# b='你好鸭'
# s='你好弱啊'
# def my_len(a): #a 为形参
# i=0
# for k in a:
# i+=1
# print(i)
# return i #返回值可以使用 return执行过的后面代码不执行,结束函数
# length=my_len(s) #s 为实参
# print(length)
#动态参数:参数名之前加"*"号,习惯参数名用args;
#args 接受的是按照位置传参的值,组织成一个元祖
#kwargs 接受的是关键字传参的值,组织成一个字典
#args必须在kwargs之前
# def sum(*args):
# n=0
# for i in args:
# n+=i
# return n
# sum=sum(1,2,3,4)
# print(sum)
#动态参数的另一种传参方式
def func(*args):
print(args)
l=[1,2,3,4,5]
func(1,2,3,4,5)
func(*l) #站在实参角度上,给一个序列加上*,就是将这个序列按照顺序打散
def fun(**kwargs):
print(kwargs)
fun(a=1,b=2)
d = {'a':1,'b':2}
fun(**d)