混合运算的优先级:
() > ** * / // % 高于 +-
= += -= *= /= **=
a = 1 ==> a += 3 ==> a = a + 3
其余同理
注意: python没有自增自减 (a++ ++a a-- --a)
in
not in
eg:
>>>a = [1,2,3,4] #a是个列表
>>>1 in a
True #1在a列表中
>>>1 not in a
False #1不在a列表中错误,即1在a列表中
is
is not
eg:
>>>a = [1,2,3]
>>>b = [1,2,3]
>>>a == b
True
>>>a is b
False
因为 == 判断两变量值是否相等,
而 is 判断两变量值是否相等,并且判断两个变量内存地址是否相同
前面带两个--是翻译器自己内置的,我们不用管,我们了解后面的
>>>s = "l love you"
>>>len(s)
10 #8个字母和两个空格
或者
>>>len("l love you")
10
使用方法:s.capitalize() 对象.方法
eg:
>>>s = 'l love you'
>>>s.capitalize()
L love you
使用方法:s.center(20,"#") #20表示字符串总的宽度,#表示其余填充物
eg:
>>>s = 'l love you'
>>>s.center(20,"#")
>>>'#####l love you#####'
使用方法:s.ljust(20,"#") #20表示字符串总的宽度,#表示其余填充物
eg:
>>>s = 'l love you'
>>>s.ljust(20,"#")
>>>'l love you##########'
与上面同理
>>>'##########l love you'
使用方法:s.endswith("u")
eg:
>>>s = 'l love you'
>>>s.endswith("u")
True #字符串是以u结束的
与上面同理
eg:
>>>s = 'l love you'
>>>s.find('ni')
-1 #返回为-1则没有找到
>>>s.find('l')
0 #返回其他数字代表存在且是其位置(从0开始)(顺序查找,第一次查到的位置)
>>>s.find('ln')
-1
>>>s.find('ol')
-1
>>>s.find('ll')
-1
>>>s.find('l l')
0 #查找多个字母必须连续(空格也算)且都相同
与find()唯一区别:如果不存在直接报错
eg:
>>> s.index('1')
Traceback (most recent call last):
File "", line 1, in
ValueError: substring not found
>>>
详情可以看前一篇博客(Day 01 python学习笔记)
eg:
>>> s = "l love you"
>>> s.strip()
'l love you' #字符串中间空格不去除
>>> s = " l love you "
>>> s.strip()
'l love you' #去除左右空格,并且是生成新的字符串,原字符串不改变
最明显的应用就是在百度等,搜索时有空格照样可以搜索成功
与上面同理
与上面同理
>>> s = "l love you"
>>> s.split('o') #将s中0替换为,并且将其左右两边变成单独的' '(字符串)
['l l', 've y', 'u']
>>> s.split(' ') #空格也一样
['l', 'love', 'you']
>>> s.split('x')
['l love you'] #如果没有则不操作
eg:
>>> s='L LOVE YOU'
>>> s.lower()
'l love you' #全部转成小写
>>> print(s)
L LOVE YOU #不会改变原字符串
eg:
>>>s = "l love you"
>>> s.upper()
'L LOVE YOU'
eg:
s = "l love you"
s.replace('o','a')
'l lave yau' #将s中o替换成a
eg:
>>> s = "l love you"
>>> b='ni'
>>> s.join(b)
'nl love youi' #将s拼接到b两个字母中间
>>> c='you'
>>> s.join(c)
'yl love youol love youu' #将s拼接到c两两字母中间各复制一份
由此可知是将s复制到()内字符串内两相邻字符之间各一份