序列类型 list   tuple   range

list 和 tuple

list:   列表,由 [] 标识; 有序;可改变列表元素

tuple:  元组,由 () 标识; 有序;不可改变元组元素(和list的主要区别)

list 和 tuple 的创建:

1 print([]) #空list

2 print(["a",1,True]) #元素类型不限

3 print([x for x in range(0,6)]) #列表推导式

4 print(list("a"),type(list("a"))) #强制转化

5

6 print(()) #空tuple

7 print((1)) #不是tuple

8 print((1,)) #单一元素tuple 一定要加,

9 print(("a",1,True)) #元素类型不限

10 print(tuple("a"),type(tuple("a"))) #强制转化

空list l = []

list 用一对方括号,用','隔开里面的元素  l = [a]   l = ["a",1,True]  元素类型不限

列表推导式,如:[x for x in range(0,6)] (下方会详细介绍 range 及 列表推导式)

类型转换 list()

空tuple  t = ()

tuple 若只有一个元素时,注意表示为  t = (1,)  一定要有逗号

tuple 用一对圆括号,用','隔开里面多个的元素  t = ("a",1,True)  元素类型不限

类型转换 tuple()

range

range 可方便的生成一个等差的序列,有两种表示 range(stop) 、range(start, stop[, step]) ; 通常用在 for循环语句中

range(stop) 表示 0 到 stop(不包含stop) 等差为1 的数,如 range(4) 表示 0 1 2 3

range(start, stop[, step]) 表示 从 start 到 stop(不包含stop) 等差为step的数;step缺省为1,可设置为负数

1 print(type(range(4))) #range本身就是一个type

2 for i in range(4):3 print(i) #0 1 2 3

4 for i in range(-1): #从0计数,无值

5 print(i)6 for i in range(4,7): #4 5 6

7 print(i)8 for i in range(2,7,2): #2 4 6

9 print(i)10 for i in range(5,2,-1): #5 4 3

11 print(i)

序列操作

一般操作,不改变list本身

OperationResult

x in s

True if an item of s is equal to x, else False

x not in s

False if an item of s is equal to x, else True

s + t

the concatenation of s and t

s * n or n * s

n shallow copies of s concatenated

s[i]

ith item of s, origin 0

s[i:j]

slice of s from i to j

s[i:j:k]

slice of s from i to j with step k

len(s)

length of s

min(s)

smallest item of s

max(s)

largest item of s

s.index(x[, i[, j]])

index of the first occurrence of x in s (at or after index i and before index j)

s.count(x)

total number of occurrences of x in s

1 s = ["a",1,True,["b"],2]2 print("a" in s) #判断元素存在于s

3 print("a" not in s) #判断元素不存在于s

4 print("b" ins)5 print(1.0 in s) #这边不判断int float类型不同

6 print("1" in s) #这边的1为字符串

7 a = [1,2]8 b = [2,1,0]9 print(a+b) #序列相加

10 print(a*3) #序列乘法

11 s = [0,1.0,2,3,4,5,6,7,8]12 print(s[0],s[2],s[3]) #通过下标来取出对应的元素

13 print(type(s[0]))14 print(type(s[1]))15 print(s[2:4]) #取出一段list

16 print(s[2:7:2]) #根据步长取出一段list

17 print(len(s)) #list长度,即包含几个元素

18 sum =019 for i in range(0,len(s)): #使用for循环来取出list的每个元素

20 print(s[i])21 sum += i #赋值的简单表达式,相当于 sum = sum + i

22 print(sum) #总和

23 print(min(s),max(s)) #取最小/最大;注意元素类型间若不可比较,会报错

24 s = [2,3,1,2,2,3]25 print(s.index(2)) #查找对应元素第一次出现的下标

26 #print(s.index(4)) # 不存在该元素会报错

27 print(s.index(2,3)) #从下标为3的开始找起

28 print(s.index(2,3,4)) #从下标为3到下标4的阶段内找

29 print(s.count(2)) #输出为2的元素的个数

30 print(s.count("2")) #找不到匹配元素,返回0

上方列出的操作方法对 tuple 也都适用,因为并不改变序列本身的元素,如

1 s = (2,3,1,2,2,3)2 print(s[2],s[2:4],len(s),s.count(2)) #对tuple均适用

改变序列的操作:仅对 list 适用;若对 tuple 操作,会报错;clear() 和 copy() 是 Python 3.3 才新增的方法

OperationResult

s[i] = x

item i of s is replaced by x

s[i:j] = t

slice of s from i to j is replaced by the contents of the iterable t

s[i:j:k] = t

the elements of s[i:j:k] are replaced by those of t

del s[i:j]

same as s[i:j] = []

del s[i:j:k]

removes the elements of s[i:j:k] from the list

s.pop([i])

retrieves the item at i and also removes it from s

s.remove(x)

remove the first item from s where s[i] == x

s.clear()

removes all items from s (same as del s[:])

s.append(x)

appends x to the end of the sequence (same as s[len(s):len(s)] = [x])

s.extend(t)

extends s with the contents of t (same as s[len(s):len(s)] = t)

s.insert(i, x)

inserts x into s at the index given by i (same as s[i:i] = [x])

s.copy()

creates a shallow copy of s (same as s[:])

s.reverse()

reverses the items of s in place

list的增、删、改的操作实际都比较实用,需要熟练掌握

list元素更改

可对 list 不同的下标表示法做以下操作,一般 list 下标的操作仅作对单一元素的更改赋值,如 s[0]=1 ;对多个元素的操作见下方示例(仅供参考)

1 s = [0,1,2,3]2 s[0] = "1"

3 print(s) #对list的某一元素赋另外的值,类型也跟随改变

4 s[4] = 1 #不可超过原list的长度,会报错

5 s[0:3] = [2,3,4] #可对一段元素赋另外的值

6 print(s)7 s[0:3] = ["x","x"] #可缺少,元素个数也就相应的减少了

8 print(s)9 s[0:2] = ["x","x","x","x"] #可增加,元素个数也就相应的减加了

10 print(s)11 s[0] = [0,0] #单个元素注意,相当于赋值,把序列赋予该元素

12 print(s)13 s[1:2] =[0,0]14 print(s)15 s = [0,1,2,3,4,5,6,7,8]16 s[1:8:2] = ["x"]*4

17 #s[1:8:2] = ["x"]*3 # 这种表示方式元素个数一定需要相同,不然会报错

18 print(s)

list operation

list元素删除

1 s = [0,1,2,3,4,5,6,7,8]2 del s[0:4] #删除对应的元素

3 print(s)4 s = [0,1,2,3,4,5,6,7,8]5 del s[1:8:2] #做删除

6 print(s)7 s = [0,1,2,3,4,5,6,7,8]8 s.pop(3)9 print(s.pop(3),s) #做删除,并且返回该元素的值

10 print(s.pop(),s) #默认删除最后一个

11 s = [2,"1",1.0,1,2,1]12 s.remove(1) #删除第一个值为 1 的元素

13 print(s)14 s.clear() #置空,Python3.3引入

15 print(s)

list元素增加

1 s = [0,1,2,3,4]2 s.append(5) #list 最后加一个元素

3 print(s)4 s.extend([6,7]) #list 最后拼接序列

5 print(s)6 s.extend(range(3))7 print(s)8 s.insert(1,["x"]) #在1的位置插入["x"]

9 print(s)

其他操作,reverse、copy 等

1 s = [1,2,3]2 c = s.copy() #相当于 c = s

3 print(c)4 c.reverse()5 print(c)6 s = [2,3,1,4]7 s.sort() #排序

8 print(s)9 #s = ["b",1,"a",True] # 报错,必须是可比较的类型

10 s = ["b","a"]11 s.sort()12 print(s)

python语句print(tuple(range(2)))_Python学习(四)数据结构 —— list tuple range相关推荐

  1. python语句print(tuple(range(2)))_Python语句print(tuple(range(2)),list(range(2)))的运行结果是__________。...

    [单选题]( )是通信网中最早出现的一种交换方式,也是应用最普遍的一种交换方式,主要应用于电话通信网中,完成电话交换. [填空题]离心泵的流量调节实际上是改变泵的____点. [单选题]关于 的导数, ...

  2. python语句print type 1234的结果是_python语句print(type(123))的数据结果是( )。_学小易找答案...

    [单选题]python语句print(type(1//2))的数据结果是( ). [单选题]在Python程序中假设字典d={'1': 'male', '2': 'female'},如果语句中使用d[ ...

  3. python语句print(type)的输出结果是_Python语句print(type({ }))的输出结果是( )。_学小易找答案...

    [其它] [单选题](5分)不等式 成立是不等式 成立的( ) (5.0分) [多选题]自由变换命令可以对形状工具进行那些编辑? [单选题]( )是不等长编码 [判断题]在Python中,可以用els ...

  4. python语句print(type([1、2、3、4))_Python语句print(type([1,2,3,4]))的输出结果是() 。...

    Python语句print(type([1,2,3,4]))的输出结果是() . 答: 折现现金流估值法的估值步骤为(). 答:选择适用的折现现金流估值法→确定详细预测期数(n)→→计算详细预测期内的 ...

  5. python语句print type 1234的输出结果是_Python语句 print(type(1J))的输出结果是

    [填空题]遍历输出文件所有行. f=open("d:\\r2.txt","r") while True: str= print(str,end='') if n ...

  6. python语句print(chr(65))_Python语句 print(chr(65))的运行结果是

    [单选题]s1=[4,5,6];s2=s1;s1[1]=0;print(s2)的结果是 [单选题]下列选项中,( )的布尔值不是 Flase . [填空题]若 a=3 , b=2 ,那么( a &am ...

  7. python语句print(type([1、2、3、4))_Python语句 print(type([1,2,3,4])的运行结果是_学小易找答案...

    [填空题]Python表达式eval("5/2+5%2+5//2")的结果是 [填空题].循环语句 for i in range(-3,21,4)的循环次数为( ) [判断题]如有 ...

  8. python语句print(type(1j))的输出结果_Python 语句print(type(1J))的输出结果是:_学小易找答案...

    [判断题]企业家精神在组织内部是可以传递的. [单选题]有极少数的霍乱病人,尚未出现泻吐症状即发生循环衰竭而死亡的,称为: [判断题]霍乱肠毒素抑制肠粘膜对Na离子和氯离子的吸收,但不影响葡萄糖的吸收 ...

  9. python语句print(type)的输出结果是_Python语句print(type(1/2))的输出结果是_____

    Python语句print(type(1/2))的输出结果是_____ 答: 以下不属于数字媒体技术特点的是哪项? 答:超高清 公民和组织因国防建设和军事活动在经济上受到直接损失的,应立即获得补偿 答 ...

  10. python语句print(0xa+0xb)_Python语句print(0xA+0xB)的输出结果为()

    Python语句print(0xA+0xB)的输出结果为() 答:21 时代精神是在新的历史条件下形成和发展的,体现民族特质,顺应时代潮流的思想观念.( )的总和 答:行为方式 社会风尚 价值取向 精 ...

最新文章

  1. grafana 安装配置
  2. 微信小程序实现数组排序(向上向下移动)
  3. LeetCode 1290 二进制链表转整数
  4. ZZULIOJ 1075: 聚餐人数统计
  5. 数论 —— 毕达哥拉斯三元组
  6. 百度api 一直提示token错误_phpcms小程序插件小程序万能接口api(支持微信、百度)...
  7. jQuery文档处理
  8. leapmotion 在unity中看不到手
  9. matpower和pandapower数据的转化
  10. verilog——三八译码器
  11. Oracle minus用法详解及应用实例
  12. 八股文写春联会是什么样子?
  13. 23种设计模式用英语如何表达?
  14. ck6.8整合php,CKplayer-超酷网页视频播放器
  15. Anker 拓展坞连接网线经常断网问题
  16. CAD 批量打印,输出pdf,plt的工具
  17. tableau制作玫瑰图
  18. 中国民航飞行学院人事薪资管理系统实践案例
  19. win10 +anaconda+pytorch_gpu
  20. 【American English】美语口语中常见的 Gonna、wanna、gotta 含义及用法

热门文章

  1. ICML 2020 | 基于类别描述的文本分类模型
  2. ACL 2018论文解读 | 基于路径的实体图关系抽取模型
  3. 自然语言处理顶会 ACL 2018 参会见闻
  4. Java 图形用户界面(GUI)布局管理器
  5. 开篇词丨这样学Redis,才能技高一筹
  6. oracle asm和文件系统,Oracle工具之--ASM与文件系统及跨网络传输文件
  7. spring boot+logbak项目打成jar包使用java -jar命令启动后日志出现中文乱码
  8. Spring Security——集成Spring Session、Redis和JSON序列化解决方案
  9. Walking Robot
  10. 中文论文黑白矢量图绘制