字典的查询速度不如列表和元组。_几种容器(列表、元组、字典、集合)1

索引

正向索引 0,1,2,……,lenth-1

负向索引 -lenth,…,-2,-1

*索引不能超过长度

切片

print(str01[头:尾不包含:跳过】)

print(str01[::-1])将字符串倒过来

*切片超出长度也不会报错

练习:控制台,获取字符串

1.打印第一个字符,

2.打印最后一个字符

3.如果是奇数,打印中间的字符(len())

4.打印倒数三个

5.倒叙打印字符串

str01=input(“请输入字符串”)

print(str01[0])

print(str01[-1])

if len(str 01)%2!==0:

print(str01[len(str01)//2])

print(str01[-3:-100])

print(str01[::-1])

练习:在控制台输入一个整数,根据整数打印一个矩形(含*)

int01=int(input(“请输入字符串”))

print(int01*“*”)

for i in range (int01-2)

print(“*”+“ ”*(int01-2)+“*”)

print(int01*“*”)

列表

由一系列变量组成的有序容器

1.创建空列表

list01=[]

List01=list()

2.

list01=[1,4,7]

list02=(“ghujs”)

list03=(range(5))

3.添加元素

追加加在最后

list01.append(“q”)

插入元素

inst02.insert(1,“x”)

4.删除元素

移除指定元素

list01.remove(2)

删除指定索引的元素

del list02[1]

5.定位元素(索引 切片)

获取前三个元素

print(list02[:3])

获取并修改前三个元素

list02[:3]=[“a”,“b”,“c”]

list02[:3]=[“a”,“b”,“c”,“d”]

list02[:3]=[“a”]

list02[:3]=None

6.遍历元素

正向

for i in range(len(list02))

print (list02[i])

跳着选取

for i in range(0,len(list02),2)

print (list02[i])

倒着来

for i in range(len(list02)-1,0,-1)

print (list02[i])

练习 在控制台中录入学生成绩,计算总分,最高分,最低分

number=int(input(“请输入学生总数”))

list=[]

for i in range(number)

grade=int(input(“请输入第”+i+1+“个学生成绩”))

list=list.append(“grade”)

print (“总分:%d”%(sum(list)))

print (“最高分:%d”%(sum(list)))

print (“最低分:%d”%(sum(list))

Day 4Hw

1.在控制台循环输入字符串,输入q时退出,然后显示一个新的字符串

list01=[]

while true:

str_input=input(“请输入:”)

list01.append(str_input)

if str_input ==“q”

break

str_result =“”.join(list01)

print (str_result)

2.判断字符串是否为回文

str01=input(“请输入字符串”)

str02=str[::-1]

if str01=str02:

print (“huiwen”)

else:

print(“不是回文”)

2.一注彩票7个球

前六个球是红球:1—33 不能重复

最后一个篮球:1—16之间

(1)在控制台购买彩票

(2)随机产生一注彩票

(2)

import random

ticket=[]

while len(ticket)<6

number=random.randint(1,33)

if number not in ticket:

ticket.append (number)

ticket.sort()

ticket.append(number=random.randint(1,16))

#如果想排序加入sort

(1)

ticket=[]

while len(ticket)<6

number=int (input(“请输入第%d红球号码:”%(len(ticket)+1)

if number<1 or number >33:

print(“不再范围内”)

elif number in ticket:

print (“该号码已经存在”)

else:

ticket.append(number)

蓝球

while true:

number=int(input(“请输入蓝球号码:”))

if 1<=number<=16:

ticket.append(number)

break

else:

print(“不在范围内”)

for item in ticket:

print(item)

(下面是对应一些程序图)

1d3237498c71ca95766021bd4df327b9.png

6d047632334d882dcf5230f5d6ecc9f0.png

12ccd2ddea2c4368af56ed968a0d0952.png

99d3193c20e84549b2194a1227d93617.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值