# List
list1 = list() # 定义一个空列表
print("List : ",list1)
list2 = [1,2,3,4] # 定义一个整数的List
print("List : %s" % list2)
list3 = ["a","b","c"] # 定义一个字符串的List
print("List : {}".format(list3))
list4 = [1,"hello",True] # 定义一个不通数据类型的List
print("List : {0}".format(list4))
print("##"*30)
# List增加数据
# 一般可以使用append来为List增加数据,默认添加在末尾
list5 = list() # 定义一个空List
print("List : ",list5)
list5.append(1) # 往List里面添加整数
list5.append("Hello") # 往List里面添加字符串
list5.append(True) # 往List里面添加BOOL值
print("List : " ,list5)
print("$$$"*20)
# List删除数据
# List列表数据从左到右,默认从0开始递增,使用del关键字加下标即可删除
list6 = [1,2,3,4,"5"]
print("没删除数据之前 : " ,list6)
del list6[0]
print("删除一次数据之后 :{}".format(list6))
del list6[1] # 基于上一次结果删除下标为1的数据
print("删除俩次数据之后 :{}".format(list6))
del list6[2] # 基于上一次结果删除下标为2的数据
print("删除三次数据之后 : {}".format(list6))
print("$$$"*20)
# List列表修改数据
# 直接利用索引找到对应数据赋值即可
list7 = [1,2,3,"A",True]
print("未修改之前 :{}".format(list7))
list7[3] = 4
print("修改一次之后的数据 :{}".format(list7))
list7[4] = 5
print("修改俩次之后的数据 : {}".format(list7))
print("**"*20)
# List列表查找数据
# 直接利用索引找到数据即可
list8 = [1,2,3,4]
print("索引为0的数值是 :",list8[0])
print("索引为2的数据是 :",list8[2])
print("List的最后一个数据是 :",list8[len(list8)-1])
# 列表遍历
# 第一种方式
for i in list8:
print(i,end=" ")
print("\n")
# 第二种方式
# type内置函数,获取数据的类型
for i in range(len(list8)):
print("索引是{},数据是{},类型是{}".format(i,list8[i],type(list8[i])))
print("***"*20)
# 列表截取
# 截取和字符串差不多
list9 = [1,2,3,4,5]
print(list9[2:4]) # 左闭右开
print(list9[1:]) # 左闭右开 冒号后面不添加参数,默认截取到最后一位
print(list9[:4]) # 左闭右开 冒号前面不添加参数,默认截取从第一位截取
print("***"*20)
# List 列表排序
# 可以使用sort和reverse
# 对数字排序
list10 = [7,2,1,3,5,6,4]
print("排序之前 :{}".format(list10))
list10.sort() # 默认是从小到大排序
print("sort排序之后:%s" %list10)
list10.reverse() # 默认是从大到小排序
print("reverse排序之后:{}".format(list10))
# 对字符串排序
list11 = ["d","c","e","b","a","f"]
print("没排序之前 :",list11)
list11.sort()
print("sort排序之后 :%s" %list11)
list11.reverse()
print("reverse排序之后 :{}".format(list11))
print("**"*20)
# 列表于字符串互相转换
# 使用list(str)互相转换
str2 = "abc"
list12 = list(str2) # 强制将字符串转换为列表
print("str2:{},数据类型是:{}".format(str2,type(str2)))
print("list12:{},数据类型是:{}".format(list12,type(list12)))
# 字符串转列表
# 使用join将字符串转换为列表
list13 = ["hello","python"]
str3 = "".join(list13)
print("list13:{},数据类型是:{}".format(list13,type(list13)))
print("str3:{},数据类型是:{}".format(str3,type(str3)))
'''
reverse()只是把列表内的元素进行一个翻转,并不会默认按照从大到小的顺序排序.而之所以代码执行完输出的是一种从大到小的排列顺序是因为前面的sort()方法,但reverse()本身并不具备按照元素大小排序的功能.
'''