python字符串与编码

一、字符串

  1.1python支持包含中文的字符串

print("中文很好hellopython“)
中文很好hellopython

  1.2单字符编码

    Python提供了ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符:

>>> ord('A')
65
>>> ord('')
20013
>>> chr(66)
'B'
>>> chr(25991)
''

  要注意区分 'ABC' b'ABC',前者是str,后者虽然内容显示得和前者一样,但bytes的每个字符都只占用一个字节。以Unicode表示的str通过encode()方法可以编码为指定的bytes。bytes类型:二进制。互联网上数据的都是以二进制的方式传输的。str类型 :unicode的呈现形式。

二、格式化

  我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串,而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式,一般使用 % 实现格式化:在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好;例如

print('hello,%s'%'world')
hello,world
print('Hi,%s,you have $%d.'%('PanYan',10000))
Hi,PanYan,you have $10000.

  常见占位符

 

占位符 替换内容
%d 整数
%f 浮点数
%s 字符串
%x 十六进制整数

  常见占位符示例

print('%2d-%02d'%(3,1))
print('%.2f' % 3.1415926)
3-01
3.14

  其中%s永远起作用,它会把任何数据类型转换为字符串。有些时候,字符串里面的%是一个普通字符怎么办?这个时候就需要转义,用%%来表示一个%

print('Age:%s,Gender:%s'%(25,'Male'))
print('growth rate:%d %%'%7)
Age:25,Gender:Male
growth rate:7 %

  format函数与f-string函数均可以字符串格式化。

  

posted @ 2020-10-15 10:15  上虞牧之  阅读(61)  评论(0)    收藏  举报