一:链式赋值
链式赋值用于同一个对象赋值给多个变量
例:x=y=100 ==> x=100; y=100
二:系列解包赋值
系列解包赋值给对应相同个数的变量
例:a,b,c=1,2,3 ==> a=1; b=2; c=3
三:常量
Python不支持常量,即没有语法规则限制改变一个常量的值,我们只能约定常量的命名规则,以及在程序的逻辑上不对常量的值作出改变
例:
MAX_NUM = 100
print(MAX_NUM)
输出:100
MAX_NUM = 200
print(MAX_NUM)
输出:200
四:同一运算符
is:判断两个标识符是不是引用同一个对象
is not:判断两个标识符是不是引用不同对象
in/not in:判断某个字符(子字符串)是否存在与字符串中
is与==区别:
is比较两个变量的地址是否相同
==比较两个变量的值是否相同
注意点:python有个整数缓存的机制
在【-5,256】之间同一个整数被不同变量引用的地址是相同的,不在这个范围内就不相同。如下:
a = 10;
b = 10;
a == b --> True
a is b --> True
c = 1000;
d = 1000;
c == d --> True
c is d --> False
m = 'abcd'
'b' in m --> True
'b' not in m --> False
五:字符串
5.1 字符串的编码
Python3直接支持Unicode,可以表示世界上任何书面语言的字符。Python3的字符默认是16位Unicode编码,ASCII码是Unicode编码的子集
使用内置函数ord()可以把字符转换成对应的Unicode码;
使用内置函数chr()可以把十进制数字转成对应的字符;
5.2 空字符串和len()函数
Python允许空字符串的存在,不包含任何字符,但长度为零
5.3 转译字符
我们可以使用‘\+特殊字符’实现某些难以用字符表示的效果,比如:换行等
常见转译字符:
5.4 字符串拼接
可以使用 + 将多个字符串拼接起来,例如:‘abc’ + 'def' ==> 'abcdef'
注意:
如果 + 两边都是字符串,则拼接
如果 + 两边都是数字,则进行加法运算
如果 + 两边类型不同,则抛出异常
5.5 字符串的复制
使用 * 可以实现字符串的复制
5.6 不换行打印
当我们调用print函数时,会自动打印一个换行符,有时,我们不想换行,该怎么办呢?
我们可以通过参数 end= '任意字符'
5.7 从控制台读取字符串
我们可以使用input函数从控制台读取键盘输入的内容
5.8 字符串替换
我们可以使用replace替换字符串
5.9 字符串的切片
我们可以通过slice进行字符串的切片,切片操作可以让我们快速提取子字符串,标准格式为:
[起始偏移量 start : 终止偏移量 end : 步长 step]
其他操作(三个量为负)的情况:
5.10 split()分割和join()合并
split()可以基于指定分割符将字符串分割成多个子字符串(存储到列表中)。如果不能指定分割符,则默认使用空白字符(换行符/空格/制表符)。代码如下:
join()的作用则是将一系列子字符串连接起来,代码如下:
5.11 字符串的驻留机制
字符串驻留:仅保存一份相同切不可变字符串的方法,不同的值被存放在字符串驻留池中。
Python支持字符串驻留机制,对于符合标识符规则的字符串(仅包含下划线(_),字母和数字)会启用字符串驻留机制
5.12 大小写转换
5.13 格式排版
我们通过以下三个函数对字符串进行排版
居中:center(),左对齐:ljust(),右对齐:rjust();参数20在20个字符中居中
5.14 字符串其他方法
5.15 字符串的格式化
5.15.1 str.format()
Python2.6之后新增了一种格式化字符串的函数str.format(),它增强了字符串格式化的功能。
基本语法是通过 {} 和 : 来代替以前的 %
format函数可以接受不限个参数,位置可以不按顺序,代码如下:
5.15.2 填充和对齐
填充常和对齐一起使用
^ 、< 、> 分别是居中,左对齐,右对齐,后面带宽度
: 后面带填充的字符,只能是一个字符,默认用空格填充
5.15.3 数字格式化
浮点数通过f,整数通过d进行需要的格式化
其他格式如下: