最近有些懒散,笔记停更了几天,本节我们延续上节遗留的问题继续开始。将介绍python与列表相关的四个函数与11种方法。
本节的例子将不再给出实验结果,看到的朋友最好自己手动敲一遍,这样体会更深刻。每个例程都是一个独立的实验。
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
print("列表的元素个数为" + str(len(list1)))
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
print("列表中最大值为 \"" + max(list1) + "\"\n")
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
print("列表中最小值为 \"" + min(list1) + "\"\n")
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
stock = ('GOOD', 100, 490.10)
print("创建的元组为:", stock)
list2 = list(stock)
print("转换后的列表为:", list2)
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
list1.append("tail")
print("在列表末尾追加“tail”元素", list1)
#再来看下面这个追加
list1.append("adfa" * 3)
print("追加后的列表", list1) #仔细体会下这种操作,真心方便啊,而且还降低错误率
list1.append(list2) #一个列表也可以作为一个元素被添加至末尾
print("\n在列表末尾追加list2", list1)
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
stock = ('GOOD', 100, 490.10)
list2 = list(stock)
list1.append("tail")
print("在列表中“hello”元素出现的次数为", list1.count("hello"))
print("在列表中list2出现的次数为", list1.count(list2)) #此时list2已经被当作一个元素来对待了
print(list1.count("100")) #由此打印可见,count方法不能计数嵌套的列表
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
list3 = ['Google', 'Runoob', 'Taobao']
list1.extend(list3) # 扩展列表,类似于表达式 list1 += list3
print("扩展后的列表为:",list1)
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
print("hello的索引号为:",list1.index("hello"))
#再来看下面这个实验
stock = ('GOOD', 100, 490.10)
print("创建的元组为:", stock)
list2 = list(stock)
list1.append(list2)
print ("GOOD 的索引号为:",list1.index("GOOD")) #这个方法的调用说明index不能访问嵌套的列表
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
list2 = ['Google', 'Runoob', 'Taobao']
#将“haha”插入hello后面
list1.insert(2, "haha")
print("将“haha”插入hello后的列表为", list1)
list1.insert(2, list2)
print("将list2 插入hello后的列表为", list1)
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
print("pop前的列表", list1)
list1.pop()
print("pop后的列表", list1)
#移除某个具体的元素,比如 “1256.63”
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
list1.pop(2)
print("移除“1256.63”后的列表", list1)
list1 = ["10", "hello", "haha", "zh1314", "adfa", "haha"]
list2 = ['Google', 'Runoob']
print("移除前的列表", list1)
list1.remove("haha")
print("移除后的列表", list1)
list1.insert(2, list2)
print("移除前的列表", list1)
list1.remove(list2)
print("移除后的列表", list1)
list1 = ["10", "hello", "haha", "zh1314"]
list2 = ['Google', 'Runoob']
list1.reverse()
print ("列表反转后: ", list1)
list1.reverse()#恢复原列表list1
list1.insert(2, list2)
list1.reverse()
print ("嵌套列表反转后: ", list1)
sort()方法语法
list.sort(cmp=None, key=None, reverse=False)
cmp -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序。
key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
#实例
list1 = ['列','表','python']
list2 = [100, 200, 300,400,300]
list1.sort()
list2.sort(reverse=True)#按降序排列
print(list1,list2)
#对int 和 str 类型的比较
list1 = ['列','表','python',[100, 200, 300]]
list1.sort()#这句会报错,可见 sort 方法不适合 int 和 str 类型的比较
#list 和 str 也是不能相互比较,这个实验就不做了
list1 = ["10", "hello", "1256.63", "zh1314", "adfa"]
list1.clear() #等同于list1 = []
print ("列表清空后 : ", list1)
a=[0,1,2,3,4,5]
b=a
c=a.copy()
print(a, b, c)
#一下四行代码确认了copy方法时赋值列表a的一个副本,并不是类似于C语言中的指针赋值
del a[1]
b.remove(2)
c.append(66)
print(a, b, c)