python自学,day01(python基础、集合)

1.Python对bytes类型的数据用带b前缀的单引号或双引号表示:

要注意区分'ABC'b'ABC',前者是str,后者虽然内容显示得和前者一样,但bytes的每个字符都只占用一个字节。

s1 = 'ABC'
s2 = u'ABC'
s3 = b'ABC'
print('s1:',s1,'\ns2:',s2,'\ns3:',s3)

s1: ABC 
s2: ABC 
s3: b'ABC

2.纯英文的str可以用ASCII或者utf-8编码为bytes,内容是一样的,含有中文的str可以用UTF-8编码为bytes。含有中文的str无法用ASCII编码,因为中文编码的范围超过了ASCII编码的范围,Python会报错。编码方式见下:

ss1 = '凯尔特人'
ss1.encode('utf-8')

b'\xe5\x87\xaf\xe5\xb0\x94\xe7\x89\xb9\xe4\xba\xba'

注意,前面多了‘b’,说明现在它已经被转成了bytes类型

ss1 = 'Celtics'
ss2 = 'Lakers'
print(ss1.encode('ASCII'),ss2.encode('utf-8'))

b'Celtics' b'Lakers'

3. %运算符就是用来格式化字符串的。在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%?,括号可以省略。

r = (s2-s1)/s1 * 100
print('相比去年,小明成绩提升了 %.1f%%' % r)

相比去年,小明成绩提升了 18.1% 

猜你喜欢

转载自blog.csdn.net/weixin_41712499/article/details/82258062