Python学习——列表
定义:1.列表(list)是由一系列特定顺序排列的元素组成,可以包含字母,数字或者将任何东西加入列表。
2.列表的标识符号为 [ ],函数名称为list
3.列表是有序的
相关概念:
元素:列表中的值称之为元素,元素之间用逗号隔开
下标:列表中每个元素对应一个下标,下标自左往右从0开始,或者自右往左从-1开始
一. 列表的简单操作
1.创建一个空列表
lists = [ ] 或者 lists = list()
2.创建一个有若干元素的列表
lists = [1,2,3,4,5,6,7,8] #创建一个包含数字1-9的叫做 lists的列表
3.访问列表元素
print(lists[4]) #lists列表中包含八个元素,下标自左往右为0-7,打印下标为4的列表元素
4.修改列表元素
lists[8] = 9 #将下标为8 的元素改为数值 9
二.列表简单操作
1.列表之间的相加
list_1 = ['a','b','c','d']
list_2 = ['e','f','g','h']
#定义俩个列表list_1和list_2
#将俩个列表相加
print( list_1 + list_2 )
#结果显示为 ['a','b','c','d','e','f','g','h']
2.列表相乘
print (list_1 * 2)
#代表列表相乘2次,实质为将列表list_1赋值了一份,此时list_1的元素变为原来的两倍
3.列表的分片操作
print( lists[::] ) #显示列表中所有元素
print( lists[:4]) #显示下标为0-3的元素,注意在Python取值过程中,最后一个数去不上
print( list[::2]) #代表间隔俩个取一个数值
print( lists[1:5]) #代表取值下标1-5之间的元素,下标为5区不上,请注意
4.列表成员检测
if 3 in lists:
print( ' 3 在列表中 ' )
5.序列函数
print(len(lists)) #答应列表的长度或者说列表有多少个元素
print(max(lists)) #打印列表中最大的元素
print(min(lists)) #打印列表中值最小的元素
三.列表的遍历
#定义几个列表
list_1 = [1,2,3,4,5,6,7,8,9]
list_2 = [
[1,2,3,4,5],
['a','b','c','d','e']
]
#进行列表的遍历
#此次遍历得到列表list_1 的所有元素
for x in list_1:
print(x)
#遍历列表list-2的所有元素,俩中方法
#第一种
for A,B in list_2:
print(A,B)
#第二种
for x in list_2:
for y in x:
print(y)
四.列表常用函数表达
#定义一个本次操作所需列表nums
nums = ['关羽','张飞','赵云','马腾','黄忠']
1.append()向列表末尾添加元素,直接修改原列表
EX: nums.append('许褚') ——>结果显示为nums列表增加来了一个元素: ['关羽','张飞','赵云','马腾','黄忠','许褚']
2.insert()在列表指定位置添加元素
EX: nums.insert(2,'典韦') ——>结果显示为nums列表在下标为2的地方增加了‘典韦’这个元素:['关羽','张飞','典韦','赵云','马腾','黄忠','许褚']
3.pop()删除列表中指定元素的值,返回值为所删除的元素
EX:nums.pop(2) ——>结果显示下标2位置的元素被删除,nums = ['关羽','张飞','赵云','马腾','黄忠','许褚']
若 print(nums.pop(2)) 则可以得到pop所删除的元素值,可以再次利用此值
4.remove()删除列表中指定元素
EX : nums.remove('许褚') ——> 次操作删除许褚,则原列表变为 nums = ['关羽','张飞','赵云','马腾','黄忠']
5.clear()清空列表
EX:nums.clear() ——> 注意此次操作会将列表nums里面的元素全部清除
6.copy()复制列表
EX: new_nums = nums.copy() ——>此操作会复制列表nums里面的元素到new_nums列表中,得到新的列表
7.count()计算列表中某个元素出现的次数
EX:var.count(‘赵云’) ——>此操作会得到‘赵云’在列表nums中出现的次数
8.extend()将一个列表合并到另一个列表中
EX:nums_ex = nums.extend() ——>此操作会将nums列表中的值增加到列表nums_ex列表中,nums_ex列表中的元素就相当于原有元素加上nums中的元素
9.index()查看列表中某个元素的下标
EX: print(nums.index('关羽')) ——>打印元素‘关羽’在列表中的下标是多少
10.reverse()列表的反向操作
EX:var.reverse() ——>次操作代表将nums列表中的元素从头到脚置换,效果为:nums = ['黄忠','马腾','赵云','张飞','关羽']
11.sort()列表排序
EX: 1. nums.sort() #默认将列表中的值升序,默认sort参数为False
2. nums.sort(reverse = True) #将列表中的数值降序排列,reverse取相反值
3. nums.sort(key= lambda x:x%5) #自定义排序
五.列表推导式
#定义俩个列表
nums = [1,2,3,4,5,6,7,8]
words = ['A','B','C','D','E','F','G','H']
1.最基本的列表推导式
print([ '*' + i + '*' for i in nums])
2.带有判断条件的列表推导式
print([ a for a in nums if a%2 == 0])
3.多循环列表推导式
print([ str(s) + '——>' + c for s in nums for c in words])
4.带有判断条件的多循环列表推导式
print([ m + '——>' c for m in nums for l in words if nums.index[m] == words.index[l] ])
#注:这是本人学习所遇到的知识点,如若漏解错解请指出,非常感谢!BUT不喜勿喷,都是为了学习!!!
#或者有愿意交流者可邮件往来(yuxiang000@foxmail.com)
Python学习——列表的更多相关文章
- Python学习-列表元组字典操作
一.列表 列表是Python的基本数据类型之一,它是以 [] 括起来的,内部成员用逗号隔开.里面可以存放各种数据类型. # 例如: list2 = ['jason', 2, (1, 3), ['war ...
- python学习-列表、元组和字典(三)
学习笔记中的源码:传送门 3.1 列表和元组 3.2 不同类型变量的初始化: 数值 digital_value = 0 字符串 str_value = "" 或 str_value ...
- Python学习--列表和元组
在python中,最基本的数据结构是序列.序列中的每个元素被分配一个序号--即元素的位置,也称为索引.第一个索引是0. python包含6种内建的序列:列表.元组.字符串.Unicode字符串.buf ...
- Python学习 --- 列表
list 函数可以将 序列变为列表 列表操作: 1 . 元素赋值, 根据索引,可以直接修改 2 . 删除元素, del x[i] 3 . 分片赋值, name[1:] = list (' '), 可以 ...
- Python学习---列表,元组,字典
### 列表 list = [1,2,3,4,5,6] list.append(7) print(list) ===>>> [1, 2, 3, 4, 5, 6, 7] list[2] ...
- python学习——列表和元组
一.列表 1)列表介绍 列表是Python内置的一种数据类型. >一组有序项目的集合(从第一个成员序号为0开始依次递增排序) >可变的数据类型(可进行增删改查) >列表中可以包含任何 ...
- python学习——列表生成式,生成器和迭代器
列表生成式 列表生成式,是python内置的非常简单却强大的可以用来创建list的生成式.它可以极大的简化语句. """列表生成式""" # ...
- python学习列表(Lists).基础二
列表(Lists) 序列是Python中最基本的数据结构,序列中的每个元素都分配一个数字,它的第一个索引是0第二个索引是1,依次类推. 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号 ...
- Python学习---列表/元组/字典/字符串/set集合/深浅拷贝1207【all】
1.列表 2.元组 3.字典 4.字符串 5.set集合 6.深浅拷贝
随机推荐
- php中常用的字符串查找函数strstr()、strpos()实例解释
string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] ) 1.$haystack被查找的字 ...
- C#之基础
引子:C#是.NET平台所支持的多种语言中的一门编程语言,它是一门面向对象编程语言.面向对象语言的三大基本特性是:封装.继承.多态.学过C#的人肯定都知道,C#和Java极其相似.我已经学过C语言,现 ...
- JAVA提高一:静态导入、可变参数、增强型for循环、装拆箱
国庆假期已结束,假期8天,全部在家带娃,体会到了妻子的不容易,需要好好努力来多赚钱了,言归正传.10月份开始进去JAVA 高级语法知识学习,本节复习学习的为:静态导入.可变参数.增强型for循环.装拆 ...
- 移动端效果之CellSwiper
写在前面 接着之前的移动端效果讲解,刚好项目中需要使用到这一效果,去饿了么的组件库看了一下效果,发现效果和微信端的cellSwiper还是有点差别的,由于项目中又是使用的React,之前使用的Reac ...
- Java面向对象 其他对象
Java面向对象 其他对象 知识概要: (1)可变参数 (2)静态导入 (3)System (4)Runtime (5)Date Calendar (6)Math 本 ...
- k-选取问题
一.k-选取问题:给定任意一个可比较的序列,从中找出第k个元素(k从0开始,默认是从小到大的次序)的问题称为k-选取(k-selection).k-选取问题有两张退化的情况:1.0-选取问题即是找出序 ...
- 第四章 MySQL高级查询(二)
第四章 MySQL高级查询(二) 一.EXISTS子查询 在执行create 或drop语句之前,可以使用exists语句判断该数据库对像是否存在,返回值是true或false.除此之外,exists ...
- 完美实现身份证校验 js正则
注意: 1.只针对18为身份证号码进行校验,现在15位的应该很少了, 2.不区分xX大小写, 3.出生年份1900-2099,每月的天数也进行相关验证(考虑的闰月的情况), 4.校验规则详见,这个写的 ...
- java集合相关问题
1.Map/Set 的 key 为自定义对象时,必须重写 hashCode 和 equals: 2.ArrayList 的 subList 结果不可强转成 ArrayList,否则会抛出 ClassC ...
- 解题笔记-洛谷-P1010 幂次方
0 题面 题目描述 任何一个正整数都可以用2的幂次方表示.例如 137=2^7+2^3+2^0 同时约定方次用括号来表示,即a^b 可表示为a(b). 由此可知,137可表示为: 2(7)+2(3)+ ...