标签:
1、面向对象的编程 2、面向过程的编程 #没有return的叫做过程 3、函数式编程 #有return的返回叫做函数
1、可以定义默认传参的方式,位置调用的传参方式,与位置有关
def run(x=1,y=2) print (x,y) run()
2、关键字调用,与位置无关,会输出 2,1 def test1(x,y): print (x) print (y) test1(y=1,x=2)
3、参数组传参(单*) 接受的是N个位置参数,不能接受关键字参数,最终会转换成元祖 def test1(*args): print (args,type(args)) for data in (args): print (data,type(data)) test1(1,3,4,5) def test1(x,*args): print (x) print (args) test1(1,2,3,4,5,6)
4、参数组传参(双*) 接收的是字典,传入的关键子必须是key=value格式就是字典格式
**kwargs参数组必须往后放置 def test1(**kwargs): print (kwargs) test1(name="alex",age="20",sex="nan")
def test1(x,y,z=1,*args,**kwargs): print (x) print (y) print (z) print (args) print (kwargs["name"]) test1(1,2,3,4,5,6,name="alex",age="20",sex="nan") 输出 1 2 alex (4, 5, 6) {‘name‘: ‘alex‘, ‘sex‘: ‘nan‘, ‘age‘: ‘20‘}
def add(x,y,f): return f(x) + f(y) res = add(3,-6,abs) print(res)
比如说在python3中用input这个函数,传入的都是str类型,这样的话可以用 user_input = eval(uesr_input) 给转成字典再处理非常好使 case {‘bakend‘: ‘www.old.org‘,‘record‘:{‘server‘: ‘100.1.7.9‘,‘weight‘: 20,‘maxconn‘: 30}}
def run():
f = open("tmp1.txt","a+") #这里F打开文件后指针就已经去了末尾
f.seek(0) #将指针指会开始位置,否则f.read读不到东西
m = f.read()
print (m)
f.seek(0) #读完后指针又去了末尾,把他再调回起始位置
f.truncate(0) #截断文件,0代表从起始位置开始截断
s = m.replace("test\nabc","xxxxxxxxxt") #这里替换一个字符串
f.write(s) #写入字符串
run()
tmp1.txt的内容是
test
abc
123
写的方式是指追加 with open("test.txt","a+") as f: f.write("123\n")
读的方式是指 with open("test.txt","a+") as f: f.seek(0) d = f.read() f.write("123\n") print (d)
r+和a+的最大区别就是
r+如果先读后写,则是末尾追加,如果直接写则是覆盖
先读后写 with open("test.in", ‘r+‘)as f: f.readline() f.write("addition") hello1 ok2 byebye3 addition
r+的方式
r+的方式是读写方式打开
读
with open("test.txt","r+") as f:
print(f.tell()) #这里输出的位置是0
print(f.read()) #因为是0开始的所以这里会输出所有内容
print(f.tell()) #这里输出的是文件末尾
写的方式是覆盖原有内容,从0开始写入
with open("test2.txt","r+") as f:
print(f.tell()) #还是从0开始
f.write("aaaaaaaass\n") #但是文件写入的方式是覆盖原有内容
tell()判断指针的方法
这里假设test2.txt文件内容是
1 2 3
with open("test2.txt","r+") as f: print (f.tell()) d=f.read() print (len(d),f.tell())
输出结果如下,也就是说指针对这的是末尾的空字符,假设你有空格回车都要算上,最后len长度+1就是你指针的位置
0
5 7
标签:
原文地址:http://www.cnblogs.com/zoee/p/5753044.html