输出和输入函数
- 输出函数出:print()
1.默认每个print函数,输出完内容后会输出一个换行
2.一个print函数输出多个内容的时候,内容之间是用空格隔开的
3.内容后边加end=来设置结束标志(默认是‘\n’)
4.通过设置sep的值,来设置多个内容之间的间隔符
print('aaa', 100, end='\n', sep=',')
print('bbb')
结果:
aaa,100
bbb
- 输入函数:input()函数
1.input()函数可以接收从控制台输入的内容(以回车为结束标志)
2.input函数会阻塞线程,程序执行到input的时候会停下来,等待用户的输入,输入完成后才会接着执行下面的内容
3.接收到的数据是以字符串的形式返回的
value = input('输入一个数字:')
print('name', value, type(value))
结果:
输入一个数字:5
name 5 <class 'str'>
练习:猜数字游戏
随机产生一个1-100的整数
输入的数字如果和产生的随机数是一样的,就提示猜对了,并且游戏结束.
如果输入的数大于或者小于随机数,就提示输入的数字偏大或者偏小,然后让其重新输入.
import random
count = 0
number = random.randint(1,100)
print('******这是一个小游戏******')
while True:
temp = input('你猜才我的数字是什么:')
guess = int(temp)
count += 1
if guess < number:
print('你这个数小了')
continue
elif guess > number:
print('你这个数大了')
continue
elif guess == number:
if count == 1:
print('牛批')
elif 1 < count <= 5:
print('还可以')
elif count >= 6:
print('你是狗吧')
print('恭喜你猜对了')
break
结果:
******这是一个小游戏******
你猜才我的数字是什么:5
你这个数小了
你猜才我的数字是什么:50
你这个数小了
你猜才我的数字是什么:70
你这个数大了
你猜才我的数字是什么:60
你这个数小了
你猜才我的数字是什么:66
你这个数大了
你猜才我的数字是什么:63
你这个数小了
你猜才我的数字是什么:65
你这个数大了
你猜才我的数字是什么:64
你是狗吧
恭喜你猜对了
列表
-
列表、字典、元组、集合都是序列,都是容器类型的数据类型
-
列表(list):用来存储多个数据的一种数据类型。里面存储的单个数据,我们叫元素
特点:1.有序的 2.可变的(可变指定是容器中的内容的个数和值可变)3.元素可以是任何类型的数据
列表的值:用[]将列表中的元素括起来,多个元素之间用逗号隔开。[] --> 空列表
- 怎么声明一个列表
list1 = [] #创建一个空的列表
print(type(list1))
list2 = [1, 12.8, 'abc',]
print(list2,type(list2))
# 将其他的数据类型转换成列表
list3 = list('444sdasd')
print(list3)
list4 = list(x for x in range(12))
print(list4)
结果:
<class 'list'>
[1, 12.8, 'abc'] <class 'list'>
['4', '4', '4', 's', 'd', 'a', 's', 'd']
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
- 获取列表元素
列表中的每一个元素都对应的一个下标:0 ~ 列表的长度-1; -1 ~ -列表长度
a.获取单个元素:列表名[下标]
name = ['小明','保罗','英雄','克罗地亚','科比']
print(name[1])
print(name[-1])
结果:
保罗
科比
b.获取部分元素(切片)
- 列表名[起始下标:结束下标]:获取从起始下标开始,到结束下标前的所有的元素。结果是一个列表.
- 列表名[起始下标:结束下标:步进]从起始下标开始,每次下标值加步进获取下一个元素,知道结束下标前为止.
- 起始下标和结束下标都可以缺省:
如果步进是正数,起始下标缺省就是从第一个元素开始获取;如果步进是负数就从最后一个元素开始结束下标缺省,步进是正数,获取到最后一个元素;步进是负数,从后往前获取到第一个元素
name = ['小明','保罗','英雄','克罗地亚','科比']
print(name[0:3])
print(name[-5:-2])
print(name[0:4:2])
print(name[:]) #获取列表中的所有的元素,从新创建一个新的列表
print(name[::-1]) #使列表中的元素倒叙过来
结果:
['小明', '保罗', '英雄']
['小明', '保罗', '英雄']
['小明', '英雄']
['小明', '保罗', '英雄', '克罗地亚', '科比']
['科比', '克罗地亚', '英雄', '保罗', '小明']
c.一个一个的获取列表的所有元素(遍历列表)
scores = [12,89,44,46,84,32]
#遍历列表
#方法1:for循环
for item in scores:
print(item)
#方法2:
# while循环
index = 0
while index < len(scores):
print(scores[index])
index += 1
结果:
12
89
44
46
84
32
12
89
44
46
84
32
- 获取列表的长度(获取列表元素的个数)
scores = [12,89,44,46,84,32]
print(len(scores))
结果:
6
添加列表元素
- append函数
列表.append(元素)
在列表的末尾添加一个元素
skills = []
print(skills)
skills.append('龟派气功')
print(skills)
skills.append('帽子戏法')
print(skills)
结果:
[]
['龟派气功']
['龟派气功', '帽子戏法']
- insert函数
列表.insert(下标,元素)
在列表的指定的下标前插入一个元素
- 注意:在这里,下标可以越界,如果越界,就会插入到列表的最前面或者最后面
- +
列表1+列表2
将列表2中的元素,添加到列表1中元素合并后创建一个新的列表
skills = ['龟派气功']
new_skills = skills + ['风后奇门','阿威十八式']
print(new_skills)
结果:
['龟派气功', '风后奇门', '阿威十八式']
# 练习:从控制台输入10个学生的成绩,然后保存在一个列表中
score = []
for _ in range(10):
scores = float(input('请输入学生的成绩'))
score.append(scores)
print(score)
删除列表元素
- del 语句
del 可以删除任何数据
del 列表[下标] :删除列表中的指定下标的元素
- 注意:这里的下标不能越界
films = ['肖生克的救赎','回家的诱惑','大话西游','逃学威龙','赌圣','回家的诱惑']
del films[2]
print(films)
结果:
['肖生克的救赎', '回家的诱惑', '逃学威龙', '赌圣', '回家的诱惑']
- remove方法
列表.remonve(元素):删除列表中的指定的元素
如果同一个元素有多个,只删除最前面的那一个
- 注意:如果要删除的元素不再列表中,会报错
films = ['肖生克的救赎','回家的诱惑','大话西游','逃学威龙','赌圣','回家的诱惑']
films.remove('回家的诱惑')
print(films)
结果:
['肖生克的救赎', '大话西游','逃学威龙', '赌圣', '回家的诱惑']
- pop方法
列表.pop():将列表中的最后一个元素取出来
列表.pop(下标):将列表中指定下标的元素取出来
- 注意:这里下标不能越界
films = ['肖生克的救赎','回家的诱惑','大话西游','逃学威龙','赌圣','回家的诱惑']
film1 = films.pop()
print(films)
print(film1)
film2 = films.pop()
print(film2,films)
结果:
['肖生克的救赎', '回家的诱惑', '大话西游', '逃学威龙', '赌圣']
回家的诱惑
赌圣 ['肖生克的救赎', '回家的诱惑', '大话西游', '逃学威龙']
小练习
scores = [23,45,78,32,90,89,1],删除所有小于60分的成绩
scores = [23, 45, 78, 32, 90, 89, 1]
for item in scores[:]:
if item < 60:
scores.remove(item)
print(scores)
结果:
[78, 90, 89]
网友评论