字符编码:
二进制记录:128 64 32 16 8 4 2 1
1 1 1 1 1 1 1 1 = 8位
ascii 编码:占1个字节8位,只能表示256个符号,主要用于显示英语和其他西欧语言。
gb2312编码:占用第一字节剩余的128位+扩展,发布1980年。
gbk编码:发布1995年,兼容gb2312
gb18030:发布2000年,兼容gbk,gb2312,
unicode编码:统一代表所有国家的字符和符号(统一万国码),占用2个字节。2**16=65536。问题是ascii出现也占用2个字节问题。
UTF-8:可变长的编码字符集,解决unicode的问题。(存英文以ascii存储1个字节,存汉字以unicode存储,但是会占用3个字节)
全部向下兼容(utf-8 到 ascii)。
python3默认字符集utf-8. python2 默认字符集ascii
用户交互:
python3中的input交互 和 python2中的raw_input 功能一样。
1 name = input('name:') #用户输入进行交互 2 age = int(input('age:')) 3 job = input('job:') 4 salary = input('salary:') 5 6 info = ''' 7 -------------info of %s-------------- 8 Name: %s 9 Age: %d 10 Job: %s 11 Salary:%s 12 --------------end-------------------- 13 ''' % (name,name,age,job,salary) #第一种格式化输出 14 15 info2 = ''' 16 -------------info of {_name}-------------- 17 Name: {_name} 18 Age: {_age} 19 Job: {_job} 20 Salary:{_Salary} 21 --------------end-------------------- 22 '''.format(_name=name, 23 _age=age, 24 _job=job, 25 _Salary=salary) #第二种格式化输出 26 info3 = ''' 27 -------------info of {0}-------------- 28 Name: {0} 29 Age: {1} 30 Job: {2} 31 Salary:{3} 32 --------------end-------------------- 33 '''.format(name,age,job,salary) #第三种格式化输出 34 35 print (info) 36 print (info2) 37 print (info3)