189 8069 5689

python中列表的常用方法

列表中的方法
# 列表方法
'''
1. append:在列表最后插入新的值
2. clear:用于清除列表的内容
3. copy:用于复制一个列表   //通过分片也是可以复制一个列表的
4. count:用于统计某个元素在列表中出现的次数
5. extend:用于在列表结尾插入另一个列表,也就是让两个列表首尾相接。
   该方法改变的是被扩展的列表。 list1.extend(list2)//这一步是 把list2接到list1的后面 他改变的是list1的本身
   比如list1长度为3 list2长度为4 那么我们调用这个方法后 list1的长度 就变成了7 改变了list1的长度
   ,而我们之前讲过的 列表的相加创建一个新的列表 和extend 这个方法 是本质的区别 
6. index:用于从列表中找出某个值第一次出现的索引位置
7. insert:用于将值插入到列表中的指定位置 //这个方法可以取代append 因为可以在列表中的任意位置插入
8. pop:用于移除弹出列表中的元素(默认是最后一个元素),并返回该元素的值
9. remove:用于移除列表中某个值的第一次匹配项
10. reverse:用于将列表中的元素反向存放
11. sort:用于对列表进行排序,调用该方法会改变原来的列表
'''
from sqlalchemy.sql.expression import false
print("--------append方法---------")
numbers = [1,2,3,4,5]
numbers.append(20)
print(numbers)                      #[1, 2, 3, 4, 5, 20]
numbers.append("hello")
numbers.append([1,2,3])
print(numbers)                      #[1, 2, 3, 4, 5, 20, 'hello', [1, 2, 3]]

print("---------clear方法---------")
names = ["Bill", "Mary"]
print(names)                        #['Bill', 'Mary']
names.clear()
print(names)                        #[]

print("----------copy方法----------")
a = [1,2,3,4,5]
acopy = a
acopy1 = a[:]                       #通过分片复制列表
acopy2 = a.copy()
a[3] = "hello"                      #这一步的目的是 要改变 3这个位置上的数
print(acopy)                        #[1, 2, 3, 'hello', 5]
print(acopy1)                       #[1, 2, 3, 4, 5]
print(acopy2)                       #[1, 2, 3, 4, 5]

print("----------count方法-----------")
search = ["he", "new", "he", [1,2,3],"he", "world", "peter",[1,2,3]]
# 搜素“he”在search出现的次数
print(search.count("he"))           # 3

print(search.count([1,2,3]))        # 2

print(search.count(20))  # 如果没有找到指定的列表元素,返回0

print("------extend方法------")

a = [1,2,3]
b = [4,5,6]
a.extend(b)
print(a)                # [1, 2, 3, 4, 5, 6]
a[2] =123
print(a)                # [1, 2, 123, 4, 5, 6]
a = [1,2,3]
b = [4,5,6]

x = a
a = a + b
x[2] = 543
print(a)                # [1, 2, 3, 4, 5, 6]
print(x)                # [1, 2, 543] 

print("------index方法------")
numbers = [5,3,6,8]
print(numbers.index(6))  # 2  6的位置上2 
# print(numbers.index(10))  # 如果指定的值在列表中不存在,会抛出异常

print("-------insert方法-------")
numbers = [1,2,3,4,5]
#numbers.insert(3,"four")   # [1, 2, 3, 'four', 4, 5]
#print(numbers)

# 使用分片赋值完成同样的效果
numbers[3:3] = ["four"]    # 开始索引和结束索引相等 不代表任何的元数 只是光标到达此位置 把这个位子代表4这个位子
print(numbers)              # [1, 2, 3, 'four', 4, 5]

print("-------pop方法-------") # pop:用于移除弹出列表中的元素(默认是最后一个元素),并返回该元素的值
numbers = [1,2,3]
print(numbers.pop())     # 默认不指定的话 就弹出 最后一个元数 3    结果为3
print(numbers.pop(1))    # 弹出第索引位子为1的元素     结果为2
print(numbers)           # 我们弹出了2次 就剩下一个1 了  结果为 [1]

print("---------remove方法---------")  # remove:用于移除列表中某个值的第一次匹配项 
words = ["he", "new", "he","yes"]
words.remove("he")
print(words)               #  结果为 ['new', 'he', 'yes'] 只移除第一个 出现的第一个

print("------reverse方法--------")  # reverse:用于将列表中的元素反向存放
numbers = [1,2,3,4,5,6,7]
numbers.reverse()          # [7, 6, 5, 4, 3, 2, 1]    倒序  如果执行2次 那么就又正面返回了
print(numbers)

print("--------sort方法-------") # sort:用于对列表进行排序,调用该方法会改变原来的列表
numbers = [4,3,1,7,4,83,2,-3]
numbers.sort()      
print(numbers)           # [-3, 1, 2, 3, 4, 4, 7, 83]  排序 是一种升序的排序 改变了原来的列表 
# 要是不想改变原来的列表怎么办?
#方法1:使用分片或者copy的方法 将这个列表复制一份 然后在排序
numbers1 = [4,3,1,7,4,83,2,-3]
numbers2 = numbers[:]          # 分片复制方法
numbers2.sort()
print(numbers1)         # [4, 3, 1, 7, 4, 83, 2, -3]
print(numbers2)         # [-3, 1, 2, 3, 4, 4, 7, 83]

numbers3 = numbers1.copy()     # 用copy的方法 复制
print(numbers3)                # [4, 3, 1, 7, 4, 83, 2, -3]

#方法2 我们不使用sort这个函数 因为他改变了原来的列表 我们使用 sorted函数 这个函数是返回排好序的列表 
# 可以对任意的序列进行排列 ,可以对字符串进行排列
x = [5,4,7,2]
y = sorted(x)
print(x)              # [5, 4, 7, 2]
print(y)               #  [2, 4, 5, 7]

# 对字符串进行排序

print(sorted("www.baidu.com"))   # ['.', '.', 'a', 'b', 'c', 'd', 'i', 'm', 'o', 'u', 'w', 'w', 'w']
# 利用askm值进行排序  从低到高

# 我们可以通过关键字 让他降序排列 
x = [4,6,2,8,44,56,22]
x.sort(reverse = True)  # 关键字 reverse 为true 为降序 ;如果 为flase为升序 默认为升序  
                                    # reverse:用于将列表中的元素反向存放
print(x)                # [56, 44, 22, 8, 6, 4, 2]
x.sort(reverse = False)
print(x)                    # [2, 4, 6, 8, 22, 44, 56]

新闻名称:python中列表的常用方法
文章转载:http://cdxtjz.cn/article/iegscp.html

其他资讯