python第四天

一、列表
定义 :列表是一个可修改的,元素以逗号分割,以中括号包围的有序序列
格式:变量名 = [元素1,元素2,…]
操作

#初认识range
for i in range(18,8,-3):
    print(i)

#初认识列表
a = []
b = [1,2]
print((a),type(a))
print((b),type(b))
a = [1,2,3]
x = len(a)
i = 0
while i < x:
    print('第',i+1,'个值是',a[i])
    i += 1

结果:
在这里插入图片描述

#列表运算

a = [1,2,4]
b = [1,3,5,6]
c = a + b
print(c)

d = 3 * a
print(d)

e = a[1]+b[3]
print(e)

结果:
在这里插入图片描述

#输出列表里的每一个元素
a = ['a','b',1,2,3]
for i in range(len(a)):
    print(a[i])

结果:
在这里插入图片描述

#列表的一些基础输出
a = [30, 40,50,60,70]

b = a [0:5:2]#0-5,步长为2
print(b)
b = a [1:]   #从位置1开始到结束
print(b)
b = a[:1]    #输出到位置1停止
print(b)
b = a [-4:-1:1]
print(b)
for x in range(-1,-len(a)-1,-1):
    print(a[x])

输出:
在这里插入图片描述

#列表函数
a = [1,2,34,5,1,2,1,31,1]
b = a.count(1)#计算a内1的个数
print(b)

c = a .index(1)#返回第一个发现1的位置的下标
print(c)

#列表函数
# a,b=[1,2]
# print(a,b)
# a,*b=[1,2,3,4]
# print(a)
# print(b)
a = [1,2,3,4]
a .append('5')#添加指定元素
print(a)
b = [3,4]
a.extend(b)#添加指定元素序列
print(a)
a.insert(1,'q')#指定位置添加元素
print(a)

b=a.pop()#弹出
print()
b = a.pop(2)#弹出指定位置的元素
print(b)
a.remove(1)#移除指定位置的元素
print()
del a[2]#删除指定位置的数据
print(a)
a [2] = 100 #通过索引位置更改指定位置的数据
print(a)
a .reverse()#顺序倒序 数据必须为同一类型
print(a)
a = sorted(a)#列表中元素按照ASCLL码一次排列输出
print(a)

#输出列表a里面的所有元素
a = [[1,2,3],[4,5,6,7],[8,9]]
for x in a:
    print(a)
    for y in x :
        print(y,end=',')
    print()
print(a[0][1],a[1][2],a[2][1])#输出指定位置的数

输出:
在这里插入图片描述

#列表复制前篇
a = [1,2,3]
b = a
a.append(50)
print(a)
print(b)#b 的位置指向没有改变
print(id (a))
print(id (b))
print(a is b)

#深拷贝浅拷贝
import copy
a = [1,2,3,4,[5,6,7],8]
b = a  #赋值即值和地址均相同
c = copy.copy(a)  #浅拷贝不拷贝内层的改变,内存地址改变
d = copy.deepcopy(a) #深拷贝直接拷贝走所有的内容,内存地址改变
a . append(9)
a[4].append(10)#内层增加

print(a,id(a))
print(b,id(b))
print(c,id(c))
print(d,id(d))

输出:
在这里插入图片描述
二、元组
定义:元组是一个不可修改的,元素以逗号分隔的以小括号包围的有序序列
可以将元组看成一个不可修改的列表
格式:变量名 = (元素1,元素2,…)

#元组初识  计算、遍历输出
a = (1,2,3,4)
print(a,type(a))
print(a[2])

for i in a:
    print(i)
b = (5,6)
c = a + b
d = b *2
print(c,type(c))
print(d,type(d))

输出:
在这里插入图片描述

#元祖计算
a = (1,2,3,[4,5,6])
print(a,type(a))

a[3].append(9)
print(a)
#元祖列表互相转换
a = [1,2,3,4]
b =tuple(a)
print(b,type(b))
c = list(b)
print(c,type(c))

在这里插入图片描述

#元祖索引
a = ('q','w','e','r')
b = a.index('w',1,2)
print(b)

在这里插入图片描述

#内置函数 enumerate,每遍历一次返回一个元组和索引
a = (('111',22),('222',33),('333',44))
for x in enumerate(a):
    print(x)

在这里插入图片描述

#输出元组内最大值和最小值以及他们的下标
a = (1, 2, 3, 4,5,6 ,18,9,)
max = a[0]
maxIndex = 0
min = a[0]
minIndex = 0
i = 0
while i<len(a):
    if a[i]>max:
        max = a[i]
        maxIndex = i
    elif a[i]<min:
        min = a[i]
        minIndex = i
    i+=1
print(max,maxIndex)
print(min,minIndex)

在这里插入图片描述

#计算元组内奇数和偶数的个数
a = (1,2,3,4,5,6,7,8,9)
js = 0
os =0
i = 0
# while i<len(a):
#     if a[i]%2==0:
#         os+=1
#     elif a[i]%2==1:
#         js+=1
#     i+=1
for i in a:
    if i % 2 == 0:
        os+=1
    elif i%2==1:
        js+=1
print(os,js)

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值