自兴人工智能------------python入门基础(2)列表和元祖
一.通用序列操作:
列表中所有序列都可以进行特定的操作,包括索引(indexing).分片(slicing).序列相加(adding).乘法,成员资格,长度,最小值,最大值,下面会一一介绍这些操作法。
1.索引:序列是python中最基本的数据结构,序列中所有的序列都是有编号的,从0开始递推,可通过编号对序列的元素进行访问,并且支持正负索引。
>>>string=‘hello’ #自定义变量并赋值
>>>print string[] #根据编号取元素
>>>print string[-1]
最后输出是下标为0的元素'h'与‘o’
2.分片:索引对单个元素进行访问,使用分片可以对一定范围内的元素进行访问(包前不包尾),分片通过冒号相隔的两个索引实现。在交互模式输入:
>>>number=[,,,,,,,]
>>>nub=number[:] #索引为正数
>>>nub2=numbwe[-3:-] #索引为负数,小的索引放前面,从倒数开始取值
>>>nub3=number[:] #也可不输入索引,则取得整个数组
>>>nub4=number[0:7:2] #对于这种情况python为我们提供了另一个参数----步数,该参数是隐形设置的,也可理解默认步长为1
>>>print nub
[2,3]
>>>print nub2
[6,7]
>>>print nub3
[1,2,3,4,5,6,7,8]
>>>print nub4
[1,3,5,7]
3.序列相加:使用加好
>>>a=[,,]
>>>b=[,,]
>>>print a+b
[,,,,,]
>>>a='hello'
>>>b=' word'
>>>c='!'
'hello word!'
4.乘法:
>>>a=[]*
>>>print a
[,,,,]
>>>b='None'*
>>>print b
'NoneNoneNone'
5.成员资格:为检测一个值是否存在与序列中,用‘in’运算符,这种运算符称为布尔运算符,返回的真值叫布尔值。
>>>a='hello word'
>>>print 'l' in a
true
>>>b=['zhangsan','lisi','wangwu']
>>>print 'lisi' in b
true
>>>c=[,,,,]
print in c
false
6.长度,最大,最小值:
>>>a=[100,500,300,900,1]
>>>print len(a)
5
>>>print max(a)
900
>>>print min(b)
1
>>>print min(5,2,-7,-10)
-10
二.列表(方法)
1.append():在列表的末尾添加新元素
语法: list.append(obj)
2.count():计算某个元素在列表中出现的次数
语法: list.count(obj)
3.extend():用于在列表末尾追加另一个序列中的多个值(用新列表扩展原来的列表)。
语法: list.extend(seq) list代表列表,seq代表元素列表
4.index():用于找出某个值与列表第一个匹配的索引位置
语法: list.index(seq)
5.insert():用于将对象插入列表
语法: list.insertindex,obj) index代表对象obj需要插入的索引位置,obj代表插入列表中的对象
6.pop():用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
语法: list.pop(obj=list[-1])
7.remove():用于移除列表中的某一个值的第一个匹配值
语法: list.remove(obj)
8.reverse():用于反向列表中的元素
语法: list.reverse()
9.sort():用于对原文列表进行排序
语法: list.sort(funce) funce为可选参数
10.clear():用于清空列表。
语法: list.clear()
11.copy():用于复制列表,类似于a[:]
语法: list.copy()
12.高级排序:如果希望元素按特定方式排序(不是sort方法默认的按升序排列元素),就可以自定义比较方便
sort方法有两个可选参数,即key和reverse,要使用他们就要通过名字指定,我们称之为关键字参数。
>>>field=['study','python','is','happy']
>>>filed.sort(key=len) #按字符串由短到长排序
>>>filed
>>>filed.sort(key=len,reverse=true) #按字符串由长到短排序,传递两个参数
>>>filed
['python','study','happy','is']
['is','happy','study','python']
>>>num=[5,8,1,3,6]
>>>num.sort(reverse=True) #排序后逆序
>>>num
[8,6,5,3,1]
三.元组
python中的元组与列表相似,不同之处在于元组不能修改(前面多次提到的字符串也是不能被修改的)。创建元组的方法很简单:如果使用逗号分隔一些值就会自动创建元组,如:
>>>1,2,3
(1,2,3)
>>>'hello','word'
('hello','word')
还可创建空元组:
>>>()
()
>>>(1,2,3)
(1,2,3)
>>>(1,)
(1,)
1.tuple函数:tuple函数的功能和list函数基本一样,都是以一个序列作为参数,并把它转换成元组,如果参数是元组,参数就会被原样返回,如:
>>>tuple(['Hello',‘Word’])
('Hello',‘Word’)
>>>tuple('hello')
('h','e','l','l','o')
>>>tuple(('Hello',‘Word’))
('Hello',‘Word’)
2.元组的基本操作:
1)访问元组:可以使用下标索引访问元组中的值
2)修改元组:元组中的数不可以被修改,但可以对元组进行连接组合,使用‘+’进行连接
3)删除元组:元组中的数不予许被删除,但可以只用del语句删除整个元组
4)元组索引,截取:因为元组也是一个序列,所以可以访问元组中指定位置的元素也可以截取索引中的一段元素
3.元组内置函数:
1)len(tuple)用于计算元组个数
2)max(tuple)用于计算元组中的最大值
3)min(tuple)用于计算元组中的最小值
4)tuple(seq)用于将列表转换成元组
因为元组不可变所以代码更安全。如果可能,能使用元组代替列表就尽量使用元组。如:
>>>t=('a','b',['A','B'])
>>>t[2][0]='X'
>>>t[2][1]='Y'
>>>t
('a','b',['X','Y'])
此处使用了嵌套列表,一个列表包含另一个列表,也可以称为二维数组。
自兴人工智能------------python入门基础(2)列表和元祖的更多相关文章
- 自兴人工智能-------------Python入门基础(1)
Python 是一门简单易学且功能强大的编程语言. 它拥有高效的高级数据结构, 并且能够用简单而又高效的方式进行面向对象编程. Python 优雅的语法和动态 类型,再结合它的解释性,使其在大多数平台 ...
- 学习笔记(1):零基础掌握 Python 入门到实战-列表与元祖到底该用哪个?(二)...
立即学习:https://edu.csdn.net/course/play/26676/338778?utm_source=blogtoedu 列表不能通过增加索引增加元素 可以使用list中的app ...
- 干货!Python中字符串、列表、元祖、字典,集合之间的转换
一.字符串的转化 1.字符串转换成列表 字符串转换成list 的时候,str可以作为迭代对象,直接放入:也可以使用split对字符串进行切割.然后返回list s = '1a1b1c' print(l ...
- python学习-day12:列表、元祖、字典介绍和内置
list:列表 >>>----可以被修改.修改成元素,元素可以使单独的数字,也可以是:新的list. 通过:链表..每个元素存储的时候,同时会指向下一个元素. 二.list编辑修改方 ...
- Python入门基础学习(列表/元组/字典/集合)
Python基础学习笔记(二) 列表list---[ ](打了激素的数组,可以放入混合类型) list1 = [1,2,'请多指教',0.5] 公共的功能: len(list1) #/获取元素 lis ...
- python预课04 列表,元祖,统计值计算示例,py文件转为EXE文件,爬虫初步学习
列表,元组 #list l1 = [1, 2, 3, '高弟弟'] #定义一个列表 #增 l1.append("DSB") #最后增加"DSB"的元素 #删 l ...
- Python入门基础学习 三
Python入门基础学习 三 数据类型 Python区分整型和浮点型依靠的是小数点,有小数点就是浮点型. e记法:e就是10的意思,是一种科学的计数法,15000=1.5e4 布尔类型是一种特殊的整形 ...
- Python 入门基础6 --字符编码、文件操作1
今日内容: 1.字符编码 2.字符与字节 3.文件操作 一.字符编码 了解: cpu:将数据渲染给用户 内存:临时存放数据,断电消失 硬盘:永久存放数据,断电后不消失 1.1 什么是编码? 人类能够识 ...
- Python入门基础学习 二
Python入门基础学习 二 猜数字小游戏进阶版 修改建议: 猜错的时候程序可以给出提示,告诉用户猜测的数字偏大还是偏小: 没运行一次程序只能猜测一次,应该提供多次机会给用户猜测: 每次运行程序,答案 ...
随机推荐
- [国嵌笔记][010][TFTP与NFS服务器配置]
交叉开发 嵌入式软件产生的平台称为宿主机,运行嵌入式软件的平台称为目标机 宿主机一般通过串口.网络.USB.JTAG等方式将软件下载到目标机 网络下载 一般有TFTP和NFS两种方式 tftp服务器 ...
- jQuery:下拉列表的联动
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...
- 新版Azure Automation Account 浅析(一) --- 创建和Run As Account
去年年底Azure中国的Automation Account悄悄做了升级.新版本不管从功能还是end user experience方面都让人耳目一新.如果说升级前只是一个运行脚本的小工具,升级后的A ...
- ADO.NET复习总结(4)--访问SqlServer的类
1.连接SqlConnection 2. 3.执行命令SqlCommand 4.数据读取SqlDataReader 注意: ExecuteNonQuery() :执行非查询(增删改) Execute ...
- RPC架构简单理解
RPC(Remote Promote Call) 一种进程间通信方式.允许像调用本地服务一样调用远程服务. RPC框架的主要目标就是让远程服务调用更简单.透明.RPC框架负责屏蔽底层的传输方式(TCP ...
- MySQL浅谈 LEFT JOIN
On条件(在“A left join b on conditional_expr”)决定如何从table B 中检索数据行(Matching-State); 如果B中没有行匹配On 条件,额外的B的所 ...
- 在Word2010文档中显示域代码而非域值
当Word2010文档中含有域内容时,默认情况下显示域值,这样可以使插入的域内容清晰明了.用户可以根据需要选择显示域代码或显示域值,操作步骤如下所述: 步骤/方法 第1步,打开Word2010文档窗口 ...
- Django之modelform组件
一.简介与基本使用 简介:django中的modelform组件同时具有model和form作用,但是耦合度比较高,当项目需要拆分时候就比较困难了,所以在使用modelform时候需要先考虑项目的扩展 ...
- Number()和new Number()的区别以及一种简单实现
看MDN Beginners文档的时候注意到了这种用法 var n1 = Number(123); , 冒出的第一个疑问就是和 var n2 = new Number(123); 有什么区别呢? 首先 ...
- LindDotNetCore~Polly组件对微服务场景的价值
回到目录 Polly是一个开源框架,在github上可以找到,被善友大哥收录,也是.App vNext的一员! App vNext:https://github.com/App-vNext GitHu ...