python 列表与元组
来源:互联网 发布:suse linux 10 下载 编辑:程序博客网 时间:2024/05/21 17:56
列表
***特点:使用 [] 生成,生成元素之间用','隔开可以包含多种类型的对象;字符串只能是字符内容是可变的;字符串是不可变的
1.索引:[]运算符
In [1]: lst=[5.4,'hello',2]In [2]: lst[0]Out[2]: 5.4
2.切片:[:]
In [3]: lst[1:2]Out[3]: ['hello']In [4]: lst[1:3]Out[4]: ['hello', 2]
3.拼接:+
In [5]: newlst=lst+[1.2,3.5]In [6]: newlstOut[6]: [5.4, 'hello', 2, 1.2, 3.5]
4.重复:*
In [13]: lstOut[13]: [5.4, 'hello', 2]In [14]: lst*3Out[14]: [5.4, 'hello', 2, 5.4, 'hello', 2, 5.4, 'hello', 2]In [15]:
5.成员:in 运算符
In [7]: 2 in lstOut[7]: TrueIn [8]: 3.5 in lstOut[8]: False
6.长度:len() 函数
In [9]: len(lst)Out[9]: 3In [10]: len(newlst)Out[10]: 5
7.循环: for
In [12]: for i in lst: ....: print i ....: 5.4hello2In [13]:
8.列表的方法:
In [15]: lst[0]=5 #重新赋值In [16]: lstOut[16]: [5, 'hello', 2]In [17]: lst[0:2]=[3,6] #通过切片对子列表进行赋值In [18]: lstOut[18]: [3, 6, 2]In [19]: lstOut[19]: [3, 6, 2]In [20]: lst.append("abc") #append(内容)末尾追加一个新的元素In [21]: lstOut[21]: [3, 6, 2, 'abc']In [22]: lst.extend(['nihao','beautiful']) #extend([])追加一个新的列表In [23]: lstOut[23]: [3, 6, 2, 'abc', 'nihao', 'beautiful']In [24]: lst.insert(3,'100') #insert(位置,内容)在任意位置插入In [25]: lstOut[25]: [3, 6, 2, '100', 'abc', 'nihao', 'beautiful']In [27]: lst.pop() #默认删除最后一个,并且将其返回Out[27]: 'beautiful'In [28]: lst.pop(1) #pop(下标)指定删除Out[28]: 6In [29]: lst.remove('100') #remove(内容)删除In [30]: lstOut[30]: [3, 2, 'abc', 'nihao']In [31]: lst.sort() #sort(排序In [32]: lstOut[32]: [2, 3, 'abc', 'nihao']In [33]: lst.reverse() #reverse()逆序In [34]: lstOut[34]: ['nihao', 'abc', 3, 2]In [35]: lst.lst.append lst.extend lst.insert lst.remove lst.sort lst.count lst.index lst.pop lst.reverse In [35]:
示例:
求若干元素的平均数:
!!代码块#!/bin/env python#coding:utf-8nums=[]for i in range(5): nums.append(float(raw_input()))avg = sum(nums)/len(nums)#sum()求和#max()求最大的数#min()求最小的数print avg>>>>>>>>>>>>>>>>!!运行结果[root@foundation66 python]# python numbers.py 123453.0[root@foundation66 python]#
9.列表解析
(1)列表推倒实现求平均分In [1]: student=[['zhang',84],['wang',98],['li',76]]In [7]: sum([x[1] for x in student])/len(student)Out[7]: 86(2)使用列表解析对所输入的数字i的因数求和 若输入6时,输出结果应为:(1+2+3+6=1)2In [5]: sum([i for i in range(1,7) if 6%i==0])Out[5]: 12*返回x^2的值#!/bin/env python#coding:utf-8print sum([i for i in range(1,7) if 6%i==0])'''列表解析:表示方法:[表达式 for 变量 in 列表 if 条件]例如:如生成值为{x^2 : x属于{1..9}}lst=[]for x in range(1,9): lst.append(x**2)print lst用列表解析优化后:lst = [x**2 for x in range(1,9)]#对于1-8的数字求他的平方'''*求平均分并且排序#!/bin/env python#coding:utf-8student=[['zhang',84],['wang',98],['li',76]]#s=0#for chengji in student:# s += chengji[1]##print float(s)/len(student)print float(sum([x[1] for x in student]))/len(student)#按照成绩从达到小排序#def f(a):# return a[1]#student.sort(reverse=True)student.sort(key=lambda x:x[1],reverse=True)#注:匿名函数不能直接调用,调用时需要给其赋值#lambda 参数:返回值print student#如果reverse=True则按照倒叙(从达到小)排列
元组
——>即不可变的列表,一旦生成,内容无法改变
1.除了可改变列表内容的方法之外,其他的方法均可适用于元组
2.因此,索引、切片、len()、print等均可用
3.但是,append、extend、del等不可用
4.为什么需要元组—保证列表内容不被修改
*定义方法
In [8]: my_tuple=1,'a',3.14,TrueIn [9]: my_tupleOut[9]: (1, 'a', 3.14, True)In [10]: my_tuple=(1,'a',3.14,True)In [11]: my_tupleOut[11]: (1, 'a', 3.14, True)In [12]: type(my_tuple) #type()查看类型Out[12]: tuple
*用’@’进行分割
In [14]: name,domain = ‘car@edu.cn’.split(‘@’)
In [15]: name
Out[15]: ‘car’
In [16]: domain
Out[16]: ‘edu.cn’
0 0
- python 列表与元组
- python-列表与元组
- **PYTHON** 列表与元组
- python 列表与元组
- python元组与列表
- Python元组与列表
- python列表与元组
- python列表与元组
- python 列表与元组
- Python的列表与元组
- python(二)列表与元组
- Python基础之列表与元组
- Python中的元组,列表与字典
- Python 第六周 列表与元组
- python——列表与元组
- Python序列(一) 列表与元组
- python列表与元组的区别
- python学习之列表与元组
- java获取redis的日志信息和动态监控信息
- java实现各种数据统计图(柱形图,饼图,折线图)
- 四大组件 — Service服务
- 构造NLP标注集的几个简便方法&随想
- 计算机程序的思维逻辑 (9)
- python 列表与元组
- POJ NOI MATH-7650 不定方程求解(Bailian4139)
- hadoop测试
- Leetcode——数论(1)
- shiro会话监听器
- 选猴王-循环链表
- android 应用组件[通用 Intent---创建闹铃] 二
- 4785: [Zjoi2017]树状数组
- 蓝桥杯Problem A: 猜年龄