Day4 python基础

一,列表:

列表:python基础数据类型之一,其他语言中也有列表的概念,如js的数组。
特点:
1.可索引,可切片,可加步长
2.容器类数据类型,可以存放各种数据类型,根据索引取出的元素还保留自有数据类型的特征
3.可以存储大量的数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素
第一:索引,切片,切片+步长
li = ['alex',100,True,[1,2,3],{'name':'太白'},(22,33)]
print(li[0],type(li[0]))
print(li[1],type(li[1]))
print(li[2],type(li[2]))
#列表切片还是列表
print(li[:4])
print(li[::2])
print(li[-1:-4:-2])
print(li[-1:2:-2])
print(li[-1:-5:-2])

第二:增、删、改、查和其它方法

#
l1 = ['alex','wu','taibai']

#append:在列表末尾追加
l1.append('老师')
l1.append([1,2,3])
print(l1) )

#extend :根据数据的最小组成元素进行追加
l1.extend('abc')
l1.extend([111,22,333])
l1.extend(['alex','sb'])
print(l1)

#insert:插入,按照索引去增加
l1.insert(0,55)
print(l1)


#应用实例:
name_list =['赵三','里斯']
while 1:
username = input('请输入新员工姓名:').strip()
if username.upper() == 'Q':exit(name_list) #break
name_list.append(username)
#
l1 = ['alex','wu','taibai']
#pop 按照索引删除元素,返回值为被删除元素
l1.pop(0)

#remove 删,按照元素删除
l1.remove('alex')
print(l1)

#clear 清空列表内的元素
l1.clear()
print(l1)

#del 的三种方法
# 从内存级别删除整个列表
del l1
print(l1) #报错
# 可以索引删除
del l1[0]
print(l1)
# 可以安照切片(+步长)删除
del l1[:2]
print(l1)
#
l1 = ['alex','wusir','taibai','eson','张女神','刘老师','何老师']

#按索引改
l1[2] = '男神'
l1[-1] = '泰迪'

#按照切片
l1[:2] = 'sbsbsb'
l1[:4] = [11,22,33,44,55,66,77]

#按照切片 + 步长,需要一一对应
l1[:3:2] = 'af'
l1[:3:2] = ['af','be']
print(l1)
#
#第一种:可使用索引,切片,切片+步长,同理str
#第二种:for 循环遍历
for i in l1:
    print(i)
#其他方法
print(len(l1))   #查询总个数

print(l1.count('alex'))  #某个元素出现的次数

#index 通过元素找索引
print(l1.index('taibai'))

#sort 排序,没有返回值,所以只能打印l2。字符串首字母ASCII码大小排序,意义不大
l2 = [5,6,7,1,4,3,2,9]
l2.sort()  #从小到大排序
l2.sort(reverse=True)  #从大到小排序
print(l2)

#reverse 将列表中的元素反向存放,也没有返回值,所以只能打印l2
l2.reverse()
print(l2)

第三:列表的嵌套

l3 = ['alex', 'wusir', ['taibai',99,'ritian'], 20]

#1, 找到alex的e元素。
print(l3[0][2])
# 2, 将wusir变成大写。
l3[1] = l3[1].upper()
print(l3)
# 3, 给此列表['taibai',99,'ritian'] 追加一个元素,'wenzhou'
l3[2].append('wenzhou')
print(l3)
# 4,将 'taibai' 首字母大写
l3[2][0] = l3[2][0].capitalize()
print(l3)
# 5,将 99 通过数字加1 的方式变成100,并放回原处。
l3[2][1] = l3[2][1] + 1
print(l3)

二,元组

元组tulpe:只读列表,只允许查询,不允许增删改
#查:
1.索引,切片,切片+步长
2.常用方法:index,conut,len,
3.for循环遍历
应用场景:一些非常重要的数据,不允许所有人修改的,放在元组中。
元组特征:儿子不能改,孙子可能可以改
tu1 = ('alex', 100, True, [1, 2, 3], {'name':'小白'},(22, 33))
#索引,切片,切片+步长
print(tu1[0])
print(tu1[:3])

三,range

#range 自定制的 数字范围的 可迭代对象,类比列表
#1.一般和for循环结合使用
#2.可以索引,切片,+步长,顾手不顾腚

range(1,101)
for i in range(1,101,2):
    print(i)
for i in range(10,1,-1)
    print(i)

#例:
l1 = ['alex', 'wusir', 'taibai', '白老师', '王老师', '刘老师']
for i in range(len(l1)):
    print(i)

 四,in/not in

s1 = 'python'
s2 = ['alex','star']
print('py' in s1)
print('h' not in s1)
print('alex' in s2)

 

posted @ 2018-08-07 16:51  乘地铁  阅读(204)  评论(0)    收藏  举报