首页 > 代码库 > 2016/12/31_Python
2016/12/31_Python
今天学习主要内容:
Python:
1、with语句(补充昨天的文件操作)
用with打开的文件在脚本结束会自动关闭,以防普通打开方式忘记关闭文件连接
语法: with open("demo.txt","r",encoding="utf-8") as file:
for line in file:
print(line)
2、字符编码的操作
1)在Python3.x中,默认的编码是Unicode码;在Python2.x中,默认的编码是ascii码
红色箭头是解码(decode),绿色箭头是编码(encode)
UTF-8→Unicode→GBK GBK→Unicode→UTF-8;
2)import sys
print(sys.getdefaultencoding()) #获取编码格式
3、函数
1)利用关键字def定义一个函数;函数的使用提高了代码的复用性,一致性和扩展性
def functionName():
pass
2)函数可以带参数,这种参数叫做形参,调用函数时用的参数叫做实参。
def functionName(arg1,arg2): #这里的参数叫做形参,即形式参数,内存不会分配空间
print("arg1="+arg1+",arg2"+arg2)
functionName() #错误,因为在定义函数时指定了两个形参,在调用时也要指定两个实参
functionName("juncx",17) #正确,这里的参数叫做实参,即实际参数,内存会分配空间
functionName(arg1="juncx",arg2=17) #正确,这是关键词传参
functionName(juncx,arg2=17) #正确,只要与形参位置相匹配
functionName(arg2=17,juncx) #错误,关键词传参不能放在未命名参数的前面
3)函数还有返回值
def functionName(arg1,arg2):
return arg1+arg2
result = functionName(2,5) #定义一个变量来接收函数的返回值
print(result) #result:7
def functionName2():
return 1,"juncx",[1,3,5],{name:"age","age":"name"}
result = functionName2()
print(result) #result:(1,"juncx",[1,3,5],{name:"age","age":"name"}) #返回多个参数时将返回一个元组
4)函数的非固定参数
def functionNametu(*args) #表示传一个元组
pass
functionNametu(1,2,3,4,5)
functionNametu(*[1,2,3,4,5]) #两种调用效果时等效的
def functionNamekv(**kwargs) #表示传一个字典
pass
functionNamekv(name="juncx",age=17)
functionNamekv({name:"juncx",age:17}) #两种调用效果是等效的
2016/12/31_Python