python零碎知识点

2022-12-30,,

0.规范化

使用Ctrl+Alt+L可以将代码排列格式更加规范化

1.浮点数

1.23x109就是1.23e9或者12.3e8;0.000012可以写成1.2e-5

2.字符串

 >>>"I'm OK"
I'm OK >>>'I\'m \"OK\"!'
I'm "OK"!

注:\表示后面的一个字符需要转义

3.除法

 >>> 10 / 3
3.3333333333333335

/除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数:

 >>> 9 / 3
3.0

还有一种除法是//,称为地板除,两个整数的除法仍然是整数:

 >>> 10 // 3
3

你没有看错,整数的地板除//永远是整数,即使除不尽。要做精确的除法,使用/就可以

4.缩进

当语句以冒号:结尾时,缩进的语句视为代码块。

5.编码转换

提供了ord()和chr()函数,可以把字母和对应的数字相互转换:

 >>> ord('A')
65 >>> chr(65)
'A'

在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。

由于Python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes

Python对bytes类型的数据用带b前缀的单引号或双引号表示:x = b'ABC'

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

如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes

以Unicode表示的str通过encode()方法可以编码为指定的bytes,例如:

 >>> 'ABC'.encode('ascii')
b'ABC' >>> '中文'.encode('utf-8')
b'\xe4\xb8\xad\xe6\x96\x87'

对于通过request获取的unicode值,可以进行以下操作:

 u = u'100.12'
print type(u) # unicode
i = int(float(u)/10)
print i #
# print int(int(u)/10) # 错误 # unicode转utf-8
u = u'100.12'
u1 = u.encode('utf-8')
print type(u1) # str
u2 = int(float(u1))
print type(u2) # int

从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法:

 >>> b'ABC'.decode('ascii')
'ABC' >>> b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')
'中文'

6.计算字符长度

要计算str包含多少个字符,可以用len()函数:

 >>> len('ABC')
3
>>> len('中文')
2

len()函数计算的是str的字符数,如果换成byteslen()函数就计算字节数:

 >>> len(b'ABC')
3 >>> len(b'\xe4\xb8\xad\xe6\x96\x87')
6 >>> len('中文'.encode('utf-8'))
6

7.格式化

 >>>'Hi, %s, you have $%d.' % ('Michael', 1000000)

 'Hi, Michael, you have $1000000.'

%d         整数                 %f         浮点

%s         字符串              %x        十六进制整数

注:%%来表示一个%.

8.输入

 >>>name = raw_input('please input your name:')
dragon
>>>name
dragon

注:在python3中变更为input().

python零碎知识点的相关教程结束。

《python零碎知识点.doc》

下载本文的Word格式文档,以方便收藏与打印。