三元运算
三元运算(三目运算),是对简单的条件语句的缩写,让代码更为简洁
三元运算格式
result = 值1 if 条件 else 值2
# 如果条件成立,那么将“值1” 返回给result 变量,否则将“值2” 返回给result变量
普通if-else语句
# 普通if-else
a = 1
b = 2
if a > b:
print(a)
else:
print(b)
利用三元运算改写
result=print(a) if a > b else print(b)
上面对比来看,利用三元运算写简单的if语句会比一般if-else简洁,阅读性更高。
字符串常用方法
1.endswith() #是否以***结束
>>> a = 'hello world'
>>> a.endswith('ld') # 以ld结尾,返回True
True
>>> a.endswith('hello') # 不是以hello结尾,返回False
False
>>>
2.startswith()#是否以***开始
>>> a = 'hello world'
>>> a.startswith('world') # 不是以world开头,返回False
False
>>> a.startswith('hello') # 以hello 开头,返回True
True
>>>
3.find #检测str是否包含在mystr中,如果是返回开始的索引值,否则返回-1
mystr.find(str,start=0,end=len(mystr))
>>> mystr = 'hello world,life is short,you need python'
>>> mystr.find('world') # 如果找到返回字符串所在下标位置
6
>>> mystr.find('is',0,5) # 没有找到返回-1
-1
>>> mystr.find('is',0,20)
17
4.isalnum()判断字符串是否是字母和数字
>>> mystr ='python321'
>>> mystr.isalnum() # 字符串中只包含数字和字母返回True
True
>>> mystr1 ='python 321'
>>> mystr1.isalnum() # 字符串中有空格,不全是字母或者数字,返回False
False
>>>
5.isalpha()判断字符串是否是字母
>>> mystr= 'abc'
>>> mystr.isalpha() # 字符串中是纯字母,返回True
True
>>> mystr= 'abc123' # 字符串中不是纯字母,返回Fals
>>> mystr.isalpha()
False
>>>
6.isdigit()判断字符串是否是数字
>>> mystr = 'abc123'
>>> mystr.isdigit() # 判断字符串是否是纯数字,是返回True,否则返回False
False
>>> mystr = '123'
>>> mystr.isdigit()
True
7.islower()#是否是小写
>>> mystr= 'Hello'
>>> mystr.islower() # 判断字符串是否是小写,是返回True,否则返回False
False
>>> mystr='hello'
>>> mystr.islower()
True
8.isupper()#是否大写
>>> mystr= 'Hello'
>>> mystr.isupper() # 判断字符串是否是大写,是返回True,否则返回False
False
9.lower将字符串中的大写字母全部变成小写的。
>>> mystr='Python HELLO world'
>>> mystr.lower()
'python hello world'
10、upper将字符串中的小写字母全部变成大写字母
>>> mystr='Python HELLO world'
>>> mystr.upper()
'PYTHON HELLO WORLD'
11、swapcase小写变大写,大写边小写
>>> mystr='Python HELLO world'
>>> mystr.swapcase()
'pYTHON hello WORLD'
12、title把每个单词的首字母变成大写
>>> mystr='my name is lilei'
>>> mystr.title()
'My Name Is Lilei'
13、lstrip移除左侧空白
>>> mystr=' python'
>>> mystr.lstrip()
'python'
14、rstrip移除右侧空白
>>> mystr=' python '
>>> mystr.rstrip()
' python'
>>>
15、trip移除两侧空白
>>> mystr=' python '
>>> mystr.strip()
'python'
16、replace(old,new,count=None):old需要替换的字符串,new替换成这个字符串,count替换多少个。不穿count表示全部替换。
>>> mystr='my name is lilei'
>>> mystr.replace('lilei','ligang')
'my name is ligang'
17、split切割字符串
>>> mystr='my name is lilei'
>>>
>>> mystr.split(" ")
['my', 'name', 'is', 'lilei']
18、join字符串连接,循环取出字符串的值用**去连接
>>> mystr='hello'
>>> '-'.join(mystr)
'h-e-l-l-o'
19、count()统计出现的次数
>>> mystr='my name is lilei'
>>> mystr.count('i')
3
字符串格式化扩展(f-strings)
python3.6新增了f-Striings方法,它可以使得字符串格式化更容易。
f-strings是指以f或F开头的字符串,其中以{}包含的表达式会进行值替换。
>>> name = '杨过'
>>> age = 18
>>> f'我是{name},我今年{age}岁'
'我是杨过,我今年18岁'
>>> F'我是{name},我今年{age}岁'
'我是杨过,我今年18岁'
因为f-strings是在运行时计算的,那么这就意味着你可以在其中放置任意合法的Python表达式,比如:
运算表达式
>>> f'我是{name},我来自{home},我今年{age}岁,身高{height:.1f}米,银行存款{money:,}'
'我是杨过,我来自终南山,我今年10岁,身高180.2米,银行存款1,234,567,890,123'
列表常用方法
>>> li =['python','linux']
>>> newli = ['java','mysql']
>>> li.extend(newli)
>>> li
['python', 'linux', 'java', 'mysql']
1.append在列表后追加元素
>>> li = ['python','java']
>>> li.append('c++')
>>> li
['python', 'java', 'c++']
>>>
2.count统计元素出现的次数
>>> li = ['python','java','python','c','c++','linux']
>>> li.count('python')
2
3.extend扩展,相当于批量添加
>>> li =['python','linux']
>>> newli = ['java','mysql']
>>> li.extend(newli)
>>> li
['python', 'linux', 'java', 'mysql']
4.index获取指定元素索引号
>>> li
['python', 'linux', 'java', 'mysql']
>>> li.index('java')
2
>>> li.index('python')
0
5.insert在指定位置插入
>>> li = ['python', 'linux', 'java', 'mysql']
>>>
>>> li.insert(1,'php')
>>> li
['python', 'php', 'linux', 'java', 'mysql']
>>>
6.pop删除最后一个元素
>>> li = ['python', 'php', 'linux', 'java', 'mysql']
>>>
>>> li.pop()
'mysql'
>>> li
['python', 'php', 'linux', 'java']
7.remove移除左边找到的第一个元素
>>> li
['python', 'php', 'linux', 'java']
>>> li.remove('php')
>>> li
['python', 'linux', 'java']
8.reverse反转列表
>>> li=['python', 'linux', 'java']
>>>
>>> li.reverse()
>>> li
['java', 'linux', 'python']
9.sort列表排序
>>> li = ['python', 'php', 'linux', 'java', 'mysql']
>>> li.sort()
>>> li
['java', 'linux', 'mysql', 'php', 'python']
>>> li.sort(reverse=True)
>>> li
['python', 'php', 'mysql', 'linux', 'java']
字典常用方法
1.修改元素
字典中的值是可以修改的,通过键找到对应值修改
>>> info = {'name':'xiaoming','age':18}
>>> info['age'] = 20
>>> info['age']
20
>>> info
{'name': 'xiaoming', 'age': 20}
2.新增元素
如果在使用变量名[‘键’]=数据时,这个“键”在字典中不存在,那么就会新增这个元素
>>> info = {'name': 'xiaoming', 'age': 20}
>>> info['hometown']='广州'
>>> info
{'name': 'xiaoming', 'age': 20, 'hometown': '广州'}
3.删除元素
del删除指定元素
clear清空字典
>>> info = {'name': 'xiaoming', 'age': 20, 'hometown': '广州'}
>>> del info['age']
>>> info
{'name': 'xiaoming', 'hometown': '广州'}
>>> info.clear()
>>> info
{}
4.len查看字典中有几个键值对
>>> info = {'name': 'xiaoming', 'age': 20, 'hometown': '广州'}
>>> len(info)
3
5.keys Python3中返回包含字典所有key值的dict_keys对象,用for循环取出每个key值。
Python2中直接返回一个包含字典所有key值的列表
>>> info = {'name': 'xiaoming', 'age': 20, 'hometown': '广州'}
>>> info.keys()
dict_keys(['name', 'age', 'hometown']) # python3版本返回一个dict_keys对象,可以迭代取出里面元素
>>> for i in info.keys():
... print(i)
...
name
age
hometown
>>>
# python2版本直接生成列表
>>> info = {'name': 'xiaoming', 'age': 20, 'hometown': '广州'}
>>> info.keys()
['hometown', 'age', 'name']
6.values获取字典的所有值(value)
python3版本中使用values返回一个包含所有值(value)的dict_values对象
python2版本中使用values直接返回包含字典中所有值(value)的列表
>>> info = {'name': 'xiaoming', 'age': 20, 'hometown': '广州'}
>>> info.values()
dict_values(['xiaoming', 20, '广州'])
>>> for i in info.values():
... print(i)
...
xiaoming
20
广州
# python2 版本
>>> info = {'name': 'xiaoming', 'age': 20, 'hometown': '广州'}
>>> info.values()
['\xe5\xb9\xbf\xe5\xb7\x9e', 20, 'xiaoming']
7、items python2返回一个包含所有(键,值)元祖的列表
python3 返回一个包含所有(键,值)元祖的列表dict_items对象
>>> info = {'name': 'xiaoming', 'age': 20, 'hometown': '广州'}
>>> info.items()
dict_items([('name', 'xiaoming'), ('age', 20), ('hometown', '广州')])
# python2版本
>>> info = {'name': 'xiaoming', 'age': 20, 'hometown': '广州'}
>>> info.items()
[('hometown', '\xe5\xb9\xbf\xe5\xb7\x9e'), ('age', 20), ('name', 'xiaoming')]
8、pop('name') 删除指定键
>>> info = {'name': 'xiaoming', 'age': 20, 'hometown': '广州'}
>>> info.pop('name')
'xiaoming'
>>> info
{'age': 20, 'hometown': '广州'}