千锋的第五天
一、输出输入函数
1.输出函数print()
a.每一个输出函数print(),默认每一次输出之后会输出一个换行,即在输出函数print()之后会有一个换行的操作。如下
print('aaa','bbb');print(12)
结果:aaa bbb
12
b.一个print函数输出多个内容的时候,默认内容之间是用空格隔开的
print('aaa','bbb',123,[])
结果:aaa bbb 123 []
c.输出函数输出的内容后边可以设置end参数,该参数主要是用来设置内容结束的标志,但是结束标志与内容之间不会有空格。设置了该参数之后不会再有换行的操作(默认是换行操作)
print('aaa','bbb',123,[],end='爱')
结果:aaa bbb 123 []爱
d.输出函数print()的多个内容之间可以设置sep()参数,该参数主要是设置多个内容之间的间隔符号。(默认是空格)
print('aaa','bbb',123,[],sep='爱')
结果:aaa爱bbb爱123爱[]
2.输入函数:input()
a.input()函数可以接收到从控制台输入的内容。(以回车为结束的标志)
b.程序遇到input()函数会停下来等待用户输入信号,直到输入完成以后才会执行后面的内容
c.input()函数接收到的信息是以字符串的形式返回的。
value = input()
print(value,type(value))
结果:12
12 <class 'str'>
练习:随机产生一个1-100的整数
输入的数字如果和产生的随机数是一样的,就提示猜对了,并且游戏结束
如果输入的数大于或者小于随机数,就提示输入的数字偏大或者偏小,然后重新输入
import random
number = random.randint(1,100)
count = 0
while True:
count += 1
value = int(input('请猜一个数字:')) #在这里运用到了input()函数可以打断循环的功能
if value == number:
print('Congratulation!')
if count < 5:
print('牛逼!')
else:
print('傻逼!')
break
elif value < number:
print('Small!')
else:
print('Big!')
结果:请猜一个数字:68
Big!
请猜一个数字:40
Small!
请猜一个数字:55
Big!
请猜一个数字:47
Big!
请猜一个数字:43
Small!
请猜一个数字:45
Small!
请猜一个数字:46
Congratulation!
傻逼!
二、列表
定义:一种用来存储多个数据的数据类型,里面的单个数据叫做元素。
形式:中括号([]),里面的单个元素之间用逗号(,)隔开。
特点:1、有序 2、可变(列表中的元素的内容和个数可变) 3、元素可以是任何数据类型。
怎么创建一个列表?
1、变量+赋值(声明一个变量,然后赋给它一个列表值)
list1 = ['jhfh',1,[1,2,3,4],{4:5,8:9},()]
print(type(list1))
结果:<class 'list'>
2、将其他类型的数据转换成列表
str1 = 'hkfhifhj'
list1 = list(str1)
print(list1)
结果:['h', 'k', 'f', 'h', 'i', 'f', 'h', 'j']
list1 = list(i for i in range(0,3))# 将for循环中所有的值取出来作为列表的元素,注意括号里面for前面的i一定要)
print(list1)
list2 = list(i for i in range(0,20) if i%6==0)
print(list2)#for前面的i不要忘记,否则会报错 invalid syntax(无效代码)
3、获取列表的元素(方法和获取字符串的字符一样)
4、获取列表的长度(len()函数)
练习:遍历一个列表中所有的元素
list1 = ['成都','重庆','北京','上海','广州','深圳']
for item in list1:
print(item)
index = 0
while index < len(list1):
print(list1[index])
index += 1
index = 0
for item in list1:
if index < len(list1):
print(item)
index += 1
结果:太长,就不显示出来了!
三、添加列表元素
1.append函数(在列表末尾添加一个元素)
格式:列表.append()
list1 = ['成都','重庆']
list1.append('上海')
print(list1)
结果:['成都', '重庆', '上海']
为什么下面这种格式会显示list2为None
list1 = ['成都','重庆']
list2 = list1.append('上海')
print(list2)
结果:None
2.insert()函数(在列表中间插入一个元素)
格式:列表.insert(下标,元素)----->在指定的下标前插入一个元素
注意:这里的下标可以越界,越界的情况下有两种,要么在开头,要么在结尾插入一个元素。
city = ['成都', '重庆', '上海']
city.insert(2,'北京')
print(city)
结果:['成都', '重庆', '北京', '上海']
3.+操作
列表1+列表2:将列表2中的元素和列表1中元素合并,创建一个新的列表
在执行列表+操作的时候,+号后面的一定要是一个列表本身,而不能是一个列表名;如果要跟一个列表名,可以使用extend()函数(列表.extend(列表))
city1 = ['成都', '重庆', '上海']
city2 = ['北京','广州','深圳']
city3 = city1 + ['北京','广州','深圳']
print(city3)
city1.extend(city2)
print(city1)
结果:['成都', '重庆', '上海', '北京', '广州', '深圳']
['成都', '重庆', '上海', '北京', '广州', '深圳']
练习:从控制台输入10个学生成绩,然后保存在一个列表中
scores = []
for _ in range(1,11):
value = float(input('输入学生成绩:'))
scores.append(value)
print('学生成绩单:',scores)
结果:输入学生成绩:98
输入学生成绩:85
输入学生成绩:74
输入学生成绩:61
输入学生成绩:84
输入学生成绩:96
输入学生成绩:97
输入学生成绩:100
输入学生成绩:59
输入学生成绩:82
学生成绩单: [98.0, 85.0, 74.0, 61.0, 84.0, 96.0, 97.0, 100.0, 59.0, 82.0]
四、删除列表元素
注意:不管是添加元素还是删除元素,列表的下标都会更新
凡是需要通过下标寻找目标的地方都是中括号
1.del 语句(delete)(del可以删除任何数据)
格式:del 列表[下标],删除指定下标的某个元素
list1 = [1,2,3,4,5,6]
del list1[2]
print(list1)
结果:[1, 2, 4, 5, 6]
2.remove 方法
格式:列表.remove(),删除某个指定的某个元素。(如果某个元素在列表里面出现多次,则删除最前面的一个)
list1 = [1,2,3,5,5,5,4,5,6]
list1.remove(5)
print(list1)
结果:[1, 2, 3, 5, 5, 4, 5, 6]
3.pop 方法
a.列表.pop()移除列表中的最后一个元素,可以将它保存在另外一个地方,如果没有保存,则相当于删掉,但对于列表来说,它已经不在列表里面了
b.列表.pop(下标) 移除列表中指定下标的元素,也可以保存起来
list1 = [1,2,3,4,5,6]
number1 = list1.pop()
print(list1,number1)
list1 = [1,2,3,4,5,6]
number2 = list1.pop(3)
print(list1,number2)
结果:[1, 2, 3, 4, 5] 6
[1, 2, 3, 5, 6] 4