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('25'))
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(最早期是7位表示一个字符,用 2**7 = 128 ) 

   

unicocde(万国码)

    创建初期 16位表示一个字符。2**16 = 65536(很显然,来标识中文还是不够用)

    升级中期 32位表示四个字符。2**32 = 4294967296 (太多了,把全文明的文字全算上估计也用不了这么多,显然太浪费)

对unicode进行升级

      

    utf-8    英文:用8位表示一个字符。2**8 = 256

                   欧洲:用16位表示两个字符。2**16 =65536

                   亚洲:用24位表示三个字符。2**24 =16777216

    utf-16  最少用16位表示一个字符

GBK(国家标准)

        英文:8位表示一个字符。2**8 = 256

        中文:16位表示一个字符。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('您输入的有敏感字符  33[1;31m%s33[0m' % (name))
    else:
        print('评论成功')
        break

    

  

原文地址:https://www.cnblogs.com/ZJGG/p/8963151.html