石家庄做网站建设的公司排名教育网站改版方案
文章目录
- 字符串
 - split()
 
- 列表
 - 常见操作
 - 列表相减
 
- 字典
 - 创建
 - 普通创建
 - eval(s)
 
- 添加或更新元素
 - d['t'] = 1
 - d.update({'c': 3})
 - {**d1, **d2} **字典解包装运算符
 
- 删除元素 d.pop('c')
 - 属性
 - d.items()
 - d.keys()
 - d.values()
 
- 访问元素
 - d['Name']
 - d.get('score')
 
- 遍历字典
 - for key in dict
 - for key, values in dict.items()
 
- 查询
 - 判断是否为空
 - 排序
 - 按key排序
 - 按value排序
 
- 类似switch的用法
 
个人学习总结,持续更新中……
字符串
split()
split()方法
str.split(str="", num=string.count(str))
 
str – 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
 num – 分割次数。默认为 -1, 即分隔所有。
 注意:a.split()和a.split(’ ')是不一样的
a = '122       345'
b = a.split()
print(b)
# ['122', '345']a = '122       345'
b = a.split(' ')
print(b)
# ['122', '', '', '', '', '', '', '345']
 
列表
常见操作
列表相减
list_1 = [1, 2, 3, 4, 5]
list_2 = [1, 2, 3]print(list(set(list_1) ^ set(list_2)))
'''
[4, 5]
'''
 
字典
字典键的特性:
 1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个键值对会覆盖前一个键值对;
 2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。
创建
普通创建
d1 = dict(a=1, b=2, c=3)  # 创建
print('d1: ', d1)
'''
d1:  {'a': 1, 'b': 2, 'c': 3}
'''
d2 = dict([('a', 1), ('b', 2), ('c', 3)])  # 创建
print('d2: ', d2)
'''
d2:  {'a': 1, 'b': 2, 'c': 3}
'''
d3 = {'a': 1, 'b': 2, 'c': 3}  # 创建
print('d3: ', d3)
'''
d4:  {'a': 1, 'b': 2, 'c': 3}
'''
d4 = dict(zip(['a', 'b', 'c'], [1, 2, 3]))
print('d4: ', d4)
'''
d4:  {'a': 1, 'b': 2, 'c': 3}
'''
 
eval(s)
# python中有一个内置函数eval
# 字符串为"{'A':123,'B':456,'C':789}"
s = "{'A':123,'B':456,'C':789}"
s_dic = eval(s)
print(s_dic)
# {'A': 123, 'B': 456, 'C': 789}
print(type(s_dic))
# <class 'dict'>
 
添加或更新元素
d[‘t’] = 1
d = {}  # 创建空字典
d['t'] = 1  # 添加元素
d['p'] = 2
d['z'] = 3
print('d: ', d)
# d:  {'t': 1, 'p': 2, 'z': 3}
 
d.update({‘c’: 3})
Python 字典 update() 函数把字典参数 dict的 key/value(键/值) 对更新到字典 dict 里。
 如果键相同,则更新值,如果键不同,则添加。
d = dict([('a', 1), ('b', 2)])
d.update({'c': 3})
print(f'd:\n{d}')
# {'a': 1, 'b': 2, 'c': 3}
 
{**d1, **d2} **字典解包装运算符
如果键相同,则更新值,如果键不同,则添加。
d1 = dict([('a', 1), ('b', 2)])
d2 = {'c': 3}
d3 = {**d1, **d2}
print(d3)
# {'a': 1, 'b': 2, 'c': 3}
 
删除元素 d.pop(‘c’)
d = dict([('a', 1), ('b', 2), ('c', 3)])
d.pop('c')  # 删除元素
print(d)
# {'a': 1, 'b': 2}
 
属性
d.items()
返回可遍历的(键, 值) 元组数组。
 可以list转换为列表
d = dict([('a', 1), ('b', 2)])
print(f'd.items():\n{d.items()}')
'''
d.items():
dict_items([('a', 1), ('b', 2)])
'''
print(f'list(d.items()):\n{list(d.items())}')
'''
list(d.items()):
[('a', 1), ('b', 2)]
'''
a = dict(d.items())
print(f'a:\n{a}')
'''
a:
{'a': 1, 'b': 2}
'''
 
d.keys()
返回可遍历的键元组数组。
 可以list转换为列表
d = dict([('a', 1), ('b', 2)])
print(f'd.keys():\n{d.keys()}')
'''
d.keys():
dict_keys(['a', 'b'])
'''
print(f'list(d.keys()):\n{list(d.keys())}')
'''
list(d.keys()):
['a', 'b']
'''
 
d.values()
返回可遍历的值元组数组。
 可以list转换为列表
d = dict([('a', 1), ('b', 2)])
print(f'd.values():\n{d.values()}')
'''
d.values():
dict_values([1, 2])
'''
print(f'list(d.values()):\n{list(d.values())}')
'''
list(d.values()):
[1, 2]
'''
 
访问元素
d[‘Name’]
d = {'Name': 'Runoob', 'Age': 7, 'score': 'First'}
print(d['Name'])
# Runoob
 
d.get(‘score’)
d = {'Name': 'Runoob', 'Age': 7, 'score': 'First'}
print(d.get('score'))
# First
 
遍历字典
for key in dict
d = {'a': 1, 'b': 2, 'c': 3}  # 创建for k in d:print(k, d[k])
'''
a 1
b 2
c 3
'''
 
for key, values in dict.items()
dict = {'a': 1, 'b': 2, 'c': 3}  # 创建for k, v in dict.items():print(k, v)
'''
a 1
b 2
c 3
'''
 
查询
d = {'a': 1, 'b': 2, 'c': 3}  # 创建if 'a' in d:print(d['a'])
# 1
 
判断是否为空
在python 中 None,空列表[],空元组(),空字典{},0都是被程序判断为False ,所以我们判断对象是否为空可以直接使用if x 或者if not x 的方法来判断对象是否为空。
# 方法一:len()
list1 = {}
if len(list1) == 0:print("dict is empty")
# dict is empty# 方法二:直接使用if判断
list2 = {}
if not list2:print("dict is empty")
# dict is empty# 方法三:使用 空列表进行判断
list3 = {}
emptylist = {}
if list3 == emptylist:print("dict is empty")
# dict is empty
 
排序
Python教程按照字典的键或值进行排序方法解析
按key排序
dir_info = {'a': 1, 'd': 8, 'c': 3, 'b': 5}
print(dir_info)
# {'a': 1, 'd': 8, 'c': 3, 'b': 5}# 按key排序
dir_sort = sorted(dir_info.items(), key=lambda x: x[0], reverse=False)
print(dir_sort)
# [('a', 1), ('b', 5), ('c', 3), ('d', 8)]
 
按value排序
dir_info = {'a': 1, 'd': 8, 'c': 3, 'b': 5}
print(dir_info)
# {'a': 1, 'd': 8, 'c': 3, 'b': 5}# 按value排序
dir_sort = sorted(dir_info.items(), key=lambda x: x[1], reverse=True)
print(dir_sort)
# [('d', 8), ('b', 5), ('c', 3), ('a', 1)]
 
类似switch的用法
def sum1(a):return a + 1def sum2(a):return a + 2def sum3(a):return a + 3sum_kinds = {'sum1': sum1,'sum2': sum2,'sum3': sum3}def sum_cal(sum_k, a):b = sum_kinds[sum_k](a)return bc = sum_cal('sum1', 100)
print(c)
# 101