PS:具体内容已在注释
a = ['a','b','c',3] #创建两个列表
b = [4,7,'love','to','lwl',',','never','change']
print(a,b)
print(a[0:1:3]) #输出指定列表被切割后的指定数据
print(b[1:7])
print(a[3]) #输出指定索引搜索的数据
print(b[7])
a[0:3]='A','B','C' #修改列表中指定数据,即可以直接修改
print(a)
b.append(347) #append()函数用于在制定列表末尾添加新数值
print(b)
a[1]=[] #移除a列表中指定索引数据
print(a)
print('a列表数据个数:',len(a),'b列表数据个数:',len(b)) #len()函数用于统计列表数据个数
c=[0,1] #生成一个嵌入式列表
d=[2,3]
e=[c,d]
print(e)
3.4:Python数据类型(Tuple:元组)
在Python中,元组的语法与列表差不多,不同之处就是元组使用小括号(),且括号中元素不能被改变,创建元组可以不需要括号;而列表是使用中括号[]。
因此想要把列表转换为元组或元组转换为列表,只需要改一下括号即可
变量名称 = ('元素',元素)
变量名称 = "元素","元素"
创建元组实例
a = ('C/c++','Python',2) #创建两个元组
b = "Python菜中菜的菜鸟","Love to lxx for Li wenli","never change"
print(a,b)
创建一个空的元组
a = ()
因为元组与列表语法相似,所以元组可以与其他元组结合为一个新元组并输出
a = ('C/C++','Python',2) #创建两个元组
b = "Python菜中菜的菜鸟","Love to lxx for Li wenli","never change"
c = a+b #相互结合
print(c)
出
如果想删除元组,那么可以用del语句来实现
a = ('C/C++','Python',2) #创建两个元组
b = "Python菜中菜的菜鸟","Love to lxx for Li wenli","never change"
c = a+b #相互结合
print(c)
del c
print(c)
因后元组被删除所以会输出异常
当然,元组也和字串符一样支持+和*运算符(具体已在注释表面)
a = ('C/C++','Python',2) #创建两个元组
b = "Python菜中菜的菜鸟","Love to lxx for Li wenli","never change"
c = a+b #相互结合
print(len(c))#输出c元组内数据个数
print(c*2)#复制输出
print(b in ("Python菜中菜的菜鸟","Love to lxx for Li wenli","never change"))
#判断元素是否存在
for c in ("Python菜中菜的菜鸟","Love to lxx for Li wenli","never change",'C/C++','Python',2):
print(c,) #迭代输出
1
输出
元组的内置函数(具体在注释)
a = ['C/C++','Python',2,4] #创建列表
b = ["Python菜中菜的菜鸟","Love to lwl for Li wenli","never change"]
c = a+b #相互结合
c = tuple(c)#强制转换为元组
print(len(c))#输出列表内数据个数
d = ('3','4','7')
print(max(d))#输出d元组内最大数值
print(min(d))#输出d元组内最小数值,max()是判断最大值函数,min()反之
输出
3.5:Python数据类型(Set:集合)
Set(集合)数据类型它和Tuple、List一样都属于复合数据类型,而且集合数据类型是一种无序不重复元素的序列
在Python中,我们可以使用大括号{}或内置函数Set()来创建一个集合(创建一个空集合必须用Set()函数,不可用{},因为{}实质是创建一个空的字典
格式实例
a = {'a','b','c','d','a'}#创建集合a
print(a)#因为集合是无序不重复元素序列,所以不会输出多出的a
b = set('sdgsdggfdgdasrfdsf')#运用Set()函数创建集合b
print(b)
输出
判断元素是否在集合内
a = {'a','b','c','d','a'}#创建集合a
print('a' in a,'e' in a)
在这个代码中代码片段’a’ in a与’e’ in a主要判断a与e元素是否在此集合内,如果在就输出True,反之位False。
输出结果
与List与Tuple一样,Set也支持数学运算符运算,不同运算符使用范围也不同
a = set('sdfygsyfysdgfsdtfsyhf')
b = set('hgdhsdfsghdvhgsfs')
print(a - b)
print(a | b)
print(a & b)
print(a ^ b)
在这里面,减号(-)的作用就是输出a集合中b集合内没有的元素,竖线符号(|)主要输出集合a或b中包含的元素,逻辑符号(&:and,和,拉丁美语为et)就是要输出集合a和b中共同包含的元素,乘方(^)主要输出不同时包含于a和b的元素。
输出结果
在集合中,我们可以使用关键字add或update来添加新的元素
b = set('hgdhsdfsghdvhgsfs')
print(b)
b.add('fuck')
b.update('good')
print(b)
输出结果,大家对照会发现,每次输出都会有不同的新元素输出
============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ==============
{'h', 'g', 'f', 's', 'v', 'd'}
{'h', 'fuck', 'g', 'f', 's', 'v', 'o', 'd'}
当然,如果想要删除某些元素,可以使用关键字remove,discard或pop(pop会随机删除某些元素)
b = set('abcdefghijk,fuck,abats')
print(b)
b.remove('f')
print(b)
b.discard('h')
print(b)
b.pop()
print(b)
在这里remove与discard分别删除f与h元素,而pop扶着随机删除集合内任意一个元素
============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ==============
{'j', 't', 'h', 'k', 'b', 'd', 's', 'f', 'g', 'i', ',', 'a', 'c', 'e', 'u'}
{'j', 't', 'h', 'k', 'b', 'd', 's', 'g', 'i', ',', 'a', 'c', 'e', 'u'}
{'j', 't', 'k', 'b', 'd', 's', 'g', 'i', ',', 'a', 'c', 'e', 'u'}
{'t', 'k', 'b', 'd', 's', 'g', 'i', ',', 'a', 'c', 'e', 'u'}
>>>
============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ==============
{'e', 'd', 's', 'g', 'h', 'b', 'c', 'i', 'f', 'k', 'u', 'j', 'a', ',', 't'}
{'e', 'd', 's', 'g', 'h', 'b', 'c', 'i', 'k', 'u', 'j', 'a', ',', 't'}
{'e', 'd', 's', 'g', 'b', 'c', 'i', 'k', 'u', 'j', 'a', ',', 't'}
{'d', 's', 'g', 'b', 'c', 'i', 'k', 'u', 'j', 'a', ',', 't'}
大家仔细观察一下,两次输出虽然因为无序输出导致输出不同,但最后删除的元素都分别不同,第一次删除元素为字母j,第二次为字母e。
当然,如果觉得删除一个不过瘾,大家可以使用函数clear()来进行全部删除 😃
b = set('abcdefghijk,fuck,abats')
print(b)
b.clear()
print(b)
在这个代码中第一次输出因为没有使用clear()函数清除因此正常输出,而第二次输出使用了clear()函数删库跑路了,所以只能输出一个空的集合。因此,输出结果如下
============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ==============
{'t', 'a', 'k', 'c', 'i', 'j', 'b', 'f', 's', ',', 'd', 'u', 'g', 'e', 'h'}
set()
3.6:Python数据类型(字典:dictionary)
在Python中,字典是另外一种数据储存的可变容器,而且可以存储任何数据类型的数据值对象。
在上一节提及到,创建一个空字典需要用大括号{},在字典中每一个值对用冒号,且每个值需要逗号(,)分隔。
a = {key1:value1,key2:value2,key3:value3}
1
dictionary{key->1value1
key2->value2
key3->value3
下面将演示创建一个字典并输出
```python
a = {'a':'Python','b':'347','c':'hjgjhfgy'}#创建一个字典
b = {'a':'HTML/Javascript','b':'Rust'}
print(b)
print(a['a'],a['c'])
这个代码中a['a']与a['c']是分别访问并输出字典内对应数据值,与索引方式差不多,而print(b)则负责输出整个字典b内数据。
输出结果
```python
============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ==============
{'a': 'HTML/Javascript', 'b': 'Rust'}
Python hjgjhfgy
如果要输出的值字典内没有,那么输出将会显示异常。
a = {'a':'Python','b':'347','c':'hjgjhfgy'}#创建一个字典
b = {'a':'HTML/Javascript','b':'Rust'}
print(b)
print(a['a'],a['d'])
输出
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\新建文件夹\4.py", line 4, in
print(a['a'],a['d'])
KeyError: 'd'
想要修改字典内的数据很简单,与前面的复合数据类型修改方式一样,不过要注意字典修改数据时修改对象填的不是数字,而是对应的名称。
a = {'a':'Python','b':'347','c':'hjgjhfgy'}#创建一个字典
b = {'a':'HTML/Javascript','b':'Rust'}
print(b)
print(a['a'],a['c'])
a['c']='Perl'
print(a['a'],a['c'])
输出
============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ==============
{'a': 'HTML/Javascript', 'b': 'Rust'}
Python hjgjhfgy
Python Perl
清除字典数据也很简单,与集合一样,使用clear()函数,然而删除的话就需要用到del语句
a = {'a':'Python','b':'347','c':'hjgjhfgy'}#创建一个字典
print(a)
a.clear()#清除字典所有数据
print(a)
del a#删除字典
print(a)
因为del语句把字典删除了,所以输出异常
输出如下
{'a': 'Python', 'b': '347', 'c': 'hjgjhfgy'}
{}
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\新建文件夹\4.py", line 6, in
print(a)
NameError: name 'a' is not defined
第四章:代码格式整洁与三种流行编程规则
4.1:格式整洁
在平时写代码时,我想有一部分人他们平时可能不会注意代码的整洁性,所以写出来的代码都是一坨坨的,导致自己或他人维护会显得很不方便。例如以下C语言迷宫代码上一页 1 2 3 4 5 6 7 8 下一页