- Python基础 - 廖雪峰的官方网站
- Python允许在数字中间以
_
分隔,写成10_000_000_000
和10000000000
是完全一样的 - 如果字符串里面有很多字符都需要转义,就需要加很多
\
,为了简化,Python还允许用r''
表示''
内部的字符串默认不转义,print(r'\\\t\\') - 如果字符串内部有很多换行,用\n写在一行里不好阅读,为了简化,Python允许用'''...'''的格式表示多行内容,可以自己试试:
>>> print('''line1
... line2
... line3''')
line1
line2
line3
- 在Python中,通常用全部大写的变量名表示常量
-
//
除法只取结果的整数部分 10 // 3 3 10 % 3 1 - 由于Python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes。
- Python对bytes类型的数据用带b前缀的单引号或双引号表示:
x = b'ABC'
- encode() decode()
- Unicode表示的
str
通过encode()
方法可以编码为指定的byte
,要把bytes
变为str
,就需要用decode()
方法 - # -*- coding: utf-8 -* 告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。
>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
'Hi, Michael, you have $1000000.'
- f-string
- 最后一种格式化字符串的方法是使用以f开头的字符串,称之为f-string,它和普通字符串不同之处在于,字符串如果包含{xxx},就会以对应的变量替换:
>>> r = 2.5
>>> s = 3.14 * r ** 2
>>> print(f'The area of a circle with radius {r} is {s:.2f}')
The area of a circle with radius 2.5 is 19.62
上述代码中,{r}被变量r的值替换,{s:.2f}被变量s的值替换,并且:后面的.2f指定了格式化参数(即保留两位小数),因此,{s:.2f}的替换结果是19.62。
- Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。
- 往list中追加元素到末尾 .append()
- 把元素插入到指定的位置 .insert()
- 删除末尾的元素 .pop()
- 另一种有序列表叫元组:tuple。tuple和list非常类似,但是tuple一旦初始化就不能修改. 不可变的tuple有什么意义?因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple。
>>> classmates = ('Michael', 'Bob', 'Tracy')
- Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来
- Python提供
range()
函数,可以生成一个整数序列,再通过list()函数,list(range(5)) - dict和set
dict和list比较,dict有以下几个特点: 查找和插入的速度极快,不会随着key的增加而变慢; 需要占用大量的内存,内存浪费多。 而list相反: 查找和插入的时间随着元素的增加而增加; 占用空间小,浪费内存很少。 |
set和dict类似,也是一组key的集合,但不存储value
add(key) remove(key)