正文
2,格式化输出and编码基础
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
格式化输出:
input格式化输出:
name = input('请输入姓名:')
name = input('请输入姓名:')
Age = int(input('请输入年龄:'))
job = input('请输入职业:')
Hobby = input('请输入爱好:')
msg = '''
------------ info of %s Li -----------
Name : %s
Age : %d
job : %s
Hobbie: %s
------------- end -----------------
''' % (name, name, Age, job, Hobby)#这里接受的是,input输入的信息。
print(msg)
字典格式输出:
dic = {
'name':'老男孩',
'age': 58,
'job':'boos',
'hobby':'money'
}
msg = '''
------------ info of Alex Li -----------
Name : %(name)s
Age : %(age)d
job : %(job)s
Hobbie: %(hobby)s
------------- end -----------------
''' % dic
print(msg)
格式化输出,在格式化输出中,单纯的表示% 需要用%% 去表示。
例如:
msg = '我叫%s,今年%d,学习进度为2%%' % ('张亚杰', int(''))
print(msg)
while else:
当while循环被break打断,则不走else程序。
例:
count = 0
while count <= 5:
count += 1
print('Loop',count)
if count == 4:break
else:
print('循环正常执行完啦')
打印结果:
Loop 1
Loop 2
Loop 3
Loop 4
编码基础
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号。
Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536。
UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:
ascii码中的内容用1个字节保存、
欧洲的字符用2个字节保存,
东亚的字符用3个字节保存...
所以,python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill),如果是如下代码的话:
报错:ascii码无法表示中文
print('你好世界')
输出结果:
????
python2x:默认ascii
python3x默认utf-8
0000 0001 =1个字节(字符)
字符 = (字母,数字,特殊字符)。
ascii(美国标准信息交换代码): 用8位表示一个字节,最后一个0是补位 2**8 = 256(最早期是位表示一个字符,用 2**7 = 128 )
↓
unicocde(万国码)
↓创建初期 位表示一个字符。2**16 = 65536(很显然,来标识中文还是不够用)
↓升级中期 32位表示四个字符。2**32 = 4294967296 (太多了,把全文明的文字全算上估计也用不了这么多,显然太浪费)
对unicode进行升级
↓
utf-8 英文:用位表示一个字符。2**8 = 256
↓ 欧洲:用位表示两个字符。2**16 =65536
↓ 亚洲:用位表示三个字符。2**24 =16777216
utf-16 最少用位表示一个字符
GBK(国家标准)
英文:位表示一个字符。2**8 = 256
中文:位表示一个字符。2**16 =65536
字节换算:
8位 1个byte
1024bytes = 1kb
1024kb = 1MB
1024MB = 1GB
1024GB = 1TB
等待用户输入内容,检测用户输入内容中是否柏寒敏感字符?如果存在敏感字符提示‘存在敏感字符,请重新输入’并允许用户重新输入并打印,敏感字符:小粉嫩,大铁锤
ff = '小粉嫩'
gg = '大铁锤'
flag = True
while flag:
name = input('请输入评论:')
if name == ff or name == gg:
print('您输入的有敏感字符 \033[1;31m%s\033[0m' % (name))
else:
print('评论成功')
break