列表的定义

python中表示组的方式有很多种,列表是其中一种

python列表中的元素不一定是一固定类型,可以是字符串和数字的混合(重点),因为java,c#等一些语言中中列表中的元素只能是一种类型

甚至,列表中的元素也能是列表,列表中嵌套列表——嵌套列表

python刷慕课 慕课网python_元组


列表的基本操作

[“新月打击”,“苍白之瀑”,“月之降临”,“月神冲刺”][3]

‘月神冲刺’

[“新月打击”,“苍白之瀑”,“月之降临”,“月神冲刺”][-1:]

[‘月神冲刺’]

[“新月打击”,“苍白之瀑”,“月之降临”,“月神冲刺”][:-1]

[‘新月打击’, ‘苍白之瀑’, ‘月之降临’]

[“新月打击”,“苍白之瀑”,“月之降临”,“月神冲刺”][0:2]

[‘新月打击’, ‘苍白之瀑’]

如果以str[a:b]形式,列表切片,返回的是列表,如果以序列str[a] 返回是的字符。

+列表拼接

*n (n为数字,重复次数)

-减法报错

元组

1.元组(tuple)

(1,2,3,4,5)

(1,-1,True)

2.元组内部元素的访问

(1,2,3,4)[0]

(1,2,3,4)[0:2]

(1,2,3)+(4,5,6)

(1,2,3)*3

python刷慕课 慕课网python_python刷慕课_02


3.元组的类型:

type((1,2,3))

<class ‘tuple’>

4.奇怪的现象:

type((1))

<class ‘int’>

type((“Hello”))

<class ‘str’>

为什么类型显示不是’tuple’?

5.元组与列表的区别?

序列总结

type((‘hello’))

<class ‘str’>

()中只有一个元素时,会把()当做一个数据运算符号

如何定义一个元素的元组 (1,)

str list tuple 为序列(组)

序列中的元素都会被分配一个序号:‘hello world’[2]输出为l

切片:[1,2,3,4,5] [0:3];[1,2,3.4,5] [0:3:2]

包含:i in [i,j,k,l,v] i not in[i,k,j,h,u] 返回True/False

长度:len([i,j,k,l,s…])

最大值:max() 数字直接比较大小,字符串将根据字符的ASCII码值

最小值:min()

python刷慕课 慕课网python_元组_03


如果向max/len等函数中插入一个列表或元组,则引号里代表一个整体

python刷慕课 慕课网python_字符串_04


字母转为对应ASCII值,需要通过函数ord()

python刷慕课 慕课网python_python_05


set集合

集合set{ }:无序(没有下表索引,所以不能取第x个元素,也不能切片)

元素不重复 ({1,1,2,2,3,3,4,4}输出为{1,2,3,4})

len({ }) 求集合长度

a (not) in { } 判断元素是否存在

减法-:两个集合的差集

交集&:两个集合的共有元素

并集|:两个集合合并在一起

定义空的集合 set()

python刷慕课 慕课网python_python_06


dict字典

一个字典可以由很多key和value,集合类型(set),不是序列

用花括号定义 {key1:value1, key2:value2…}

字典通过key来访问value => { }[key]

字典的key不能重复,重复不会报错,但是会覆盖之前重复的key对应的value

python刷慕课 慕课网python_元组_07


下面这种方式则是可以的

python刷慕课 慕课网python_元组_08


字典的key必须是不可变的类型:int、str、元组tuple(列表list、集合set不可以)

字典的value可以是任意类型,没有特别限制:str、int、float、list、set、dict等

空的字典{ }

思维导图总结基本数据类型

python刷慕课 慕课网python_元组_09