您的位置:首页 > 编程语言 > Python开发

python基础学习2- list & tuple

2018-04-10 23:14 351 查看
#列表list,字典是可变数据类型,列表项有顺序;字符串,元组tuple是不可变类型
#循环列表
import random
list1=['pens','bags','dogs','cows']
for i in range(len(list1)):
    print('Index '+str(i)+' is: '+list1[i])
print(list1[random.randint(0,len(list1)-1)])
#变量赋值,变量数量与列表长度要严格相等
pen,bag,dog,cow = list1

#多重列表
dlist = [['cat','bat'],[1,2,3,4,5]]
dlist[0]
dlist[1][4]

#列表常用操作
spam = ['cat','bat','rat','hat','kate']
spam[1]
spam[-1]
spam[-2]
spam[1:3]
spam[0:-1]
len(spam)
spam[4] = 'kat'
del spam[3:]
spam = spam + ['hat','katee']
spam.index('bat')
spam.remove('rat')
spam.append('MONKEY')
spam.insert(2,'GOOSE')
spam.sort()
spam.sort(reverse=True)
spam.sort(key=str.lower)
print(sorted(spam))

#列表应用与复制  copy() deepcopy()
import copy
list2 = ['a','b','c','d']
yy = list2
cp = copy.deepcopy(list2)
cp[1]=333
cp
list2
yy[1]=222
yy
list2

#tuple 元组, 下表方法与列表相同
tuple1 = ('hellp','tup',5)
type(('hello',))
type(('hello'))
type(['hello'])

#类型转换
tuple(['cat','dog',5])
list(('cat','dog',5))
list('hello')

#列表推导式与列表解析式效率比较,耗时差异巨大
import time
a = []
t0 = time.clock()
for i in range(1,20000):
    a.append(i)
print(time.clock() - t0,' seconds process time')

t0 = time.clock()
b = [i for i in range(1,20000)]
print(time.clock() - t0,' seconds process time')

t0 = time.clock()
b = [i**2 for i in range(1,20000) if i%2 ==0]
print(time.clock() - t0,' seconds process time')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: