字符编码
8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111 = 十进制255)
Python的字符串
在最新的Python3中,字符串是以Unicode编码的,所以,python的字符串支持多种语言,例如:
>>>print("包含中文的str")
包含中文的str
格式化
>>> "Hello, %s" % "world"
"Hello,world"
>>> "Hi,%s,you have $%d." % ("Michael", 10000)
"Hi,Michaek,you have $1000"
%运算符就是用来格式化字符串的。在字符串内部,%s 表示用字符串替换,%d 表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。
占位符 | 替换内容 |
---|---|
%d | 整数 |
%f | 浮点数 |
%s | 字符串 |
%x | 十六进制整数 |
如果不确定应该用什么,%s 永远起作用,它会把任何数据类型转换为字符串:
>>>"Age : %s. Gender: %s" % (25, true)
"Age : 25. Gender: True"
用%% 来表示一个 %
>>> "growth rate : %d %% " % 7
"growth rate: 7 %"
format()
它会用传入的参数依次替换字符串内的占位符{0},{1}.....,不过这种方式写起来比% 要麻烦的多:
>>> "Hello,{0},成绩提升了{1:.1}%".format("小明",17.125)
"Hello,小明,成绩提升了 17.1%"
练习:小明成绩从去年72分提升到今年的85分,计算小明成绩提升的百分点,并用字符串格式化显示“XX.X%”,只保留小数点后一位:
s1 = 72
s2 = 85
r = (s2 - s1) / s1 *100
print("小明成绩提升的百分点:%.1f%%" % r)
网友评论