python的容器与循环语句
文章目录
列表
列表的定义
list_1=[] #定义一个列表容器
列表的初始化
list_1=["xl","男","22"] #给列表赋值
列表原始的访问
访问小洛的年龄年龄在第三位但是列表下标是从0开始所以下标为2
list_1[2]
成员的判断
使用in或not in对成员进行判断
xl not in list_1
列表的内置方法
函数 | 作用 |
---|---|
list() | 强转列表 |
len() | 列表的长度 |
max() | 查找最大值 |
min() | 查找最小值 |
sorted() | 排序 |
enumerate() | 取列表的下标和内容输出时要转化为列表否则只会输出ID |
列表元素的追加
使用内置方法append
list_1.append('i am good people')
列表元素的删除
使用内置方法pop进行删除
list_1.pop(3)
列表内容的查询
查找在列表中出现的次数
list_1.count('xl')#查找xl在列表中出现的次数
查找首次出现的位置
list_1.index('xl')
内容的插入
在下标为x的方插入元素
list_1.insert(x,'xl')
其他
list_1.reverse() #翻转列表
list_1.sort() #排序
list_1.extend(seq) #把序列seq 的内容添加到列表中
元组
()为元组
tuple()空元组
tuple元组的意思
元组定义后内容是不可修改的
字典
字典的定义
字典是由键值对组成
value可以为列表元组字典
dict_1={'name':"xl","sex":"男","interesting":['gril','eat']}
字典元素添加
直接添加
dict_1['age']=22
字典元素的删除
使用内置方法pop()进行删除
dict_1.pop(key)
获取字典所有的key
使用内置方法keys
dict_1.keys()
循环语句
if语句
if语句的基本格式
if要判断的条件:
条件成立时,要做的事情
if语句的注意事项
判断条件的结果一定要是布尔类型不要忘记判断条件后的: 冒号
归属于if语句的代码块,需在前方填充4个空格缩进
if else语句
else不需要判断条件,
当if的条件不满足时else执行
else的代码块,同样要4个空格作为缩进
while语句
while 条件语句:
条件满足时要执行的内容
如果条件语句不为假那么里面的内容无条件一直循环
for循环
同while循环不同,for循环是无法定义循环条件的只能从被处理的数据集中,依次取出内容进行处理
for x in list_1:
要执行的内容
x为list_1里
案例
猜数
随机生成一个1-50的数字,用户再控制台输入如果猜错就提示猜大了还是猜小了,如果猜对就输入猜对了
方法一:
while循环
import random
def random_number():
return int(random.randint(1,50))
num = random_number()
i=1
while True:
try:
guess_number=int(input("请输入一个1-50之间的数字:"))
except Exception:
print("请输入一个整数")
continue
if guess_number != num:
print(num)
print("猜错了")
i+=1
if guess_number > num:
print("你猜的数太大了请再猜一次吧")
else:
print('你猜的数太大了请再猜一次吧')
print("请再次输入一个1-50之间的数字:")
else:
if i!=1:
print(f"恭喜你在第{i}猜对了")
else:
print("你太牛逼了第一次就猜对了")
break
方法二:
if语句
# 导入random包
import random
# set random variable
n = random.randint(1, 20)
# define frist guess number
frist_guess = int(input("第一次猜的数:"))
# 嵌套循环
if n != frist_guess:
print("猜错了你还有2次机会")
if n > frist_guess:
print("太小了")
else:
print('太大了')
frist_guess = int(input("第二次猜的数"))
if n != frist_guess:
print("又猜错了还剩一次机会")
if n>frist_guess:
print("太小了")
else:
print('太大了')
frist_guess = int(input("第三次猜的数"))
if n!=frist_guess:
print('很遗憾没有猜对我想的数字是:%s'%n)
else:
print("恭喜你最后一次机会猜对了")
else:
print("第一次就猜对了")