一、输入输出函数
- 1.输出函数print()
1.默认每一个print函数,输出完内容后会输出一个换行
2.一个print函数输出多个内容时,内容之间是用空格隔开的
3.内容后边加end=来设置结束标志(默认是'\n')
4.通过设置sep的值,来设置显示多个内容之间的间隔符(默认是' ')
print('aaa', 100, end='\n',sep =',')
2.输入函数:input()
1.input()可以接收从控制台输入的内容(以回车为结束标志)
2.input()会阻塞线程,程序执行到input的时候会停下来,等待用户的输入,输入完成后才会接着执行下面的内容
3.接收到的数据是以字符串的形式返回的(python2.x输入的是数字的时候,可能返回int类型或者float类型数据)
value = input('请输入整数;')
print('name',value,type(value))
练习:
随机产生一个1-100的整数,若输入的数字和随机数相同,则提示:“猜对,游戏结束”,如果输入偏大或偏小,则提示偏大或小
import random
print('----欢迎进入猜数字游戏')
number=random.randint(1,100)
count=0
while True:
value=int(input('请输入数字:'))
count+=1
if value > number:
print('大了')
elif value < number:
print('小了')
else:
print('恭喜你,猜对了,共猜了%s次'% (count))
break
print('游戏结束')
二、列表
列表(list):
用来存储多个数据的一种数据类型。里面存储的单个数据,我们叫元素
列表、字典、元祖、集合都是序列,都是容器类型的数据类型
特点:
1.有序的
2.可变的(可变指定是容器中的内容的个数和值可变)
3.元素可以是任何类型的数据
1.怎么声明一个列表,赋予一个列表值
list1 = []
print(type(list1))
list2 = [1,12,9,[1,2,3],'add',{'a':1},True]
print(list2,type(list2))
2.将其他的数据类型转换成列表
list3 = list('a111a')
print(list3)
list4 = list(i for i in range(10))
print(list4)
list5 = list(i for i in range(10) if i %3==0)
print(list5)
- 获取列表元素
列表中的每一个元素,都对应一个下标:0-列表长度-1:-1到列表长度
names = ['路飞','佐罗','娜美','鸣人','佐助']
a.获取单个元素:列表名[下标]
- 获取列表元素
print(names[-3])
print(names[1])
print(names[5]),越界
b. 获取部分元素
列表名[起始下标:结束下标]:
获取从起始下标开始到结束下标前的元素,结果还是一个列表
列表名[起始下标:结束下标:步进]:
获取从起始下标开始到结束下标前的间隔距离为步进值的元素,结果还是一个列表
注:起始下标和结束下标都可以缺省:
起始缺省+正步进=从第一个元素开始获取
起始缺省+负步进=从最后一个元素开始获取
结束缺省+正步进=获取到最后一个元素
结束缺省+负步进=从后往前获取到第一个元素
print(names[1:3])
print(names[-4:-1])
print(names[:4])
print(names[0:4:2])
c.遍历列表
scores = [12,22,44,67,88,75,2,99]
for item in scores:
print(item)
print('*****')
index =0
while index < len(scores):
print(scores[index])
index+=1
print('*****')
- 3.获取列表的长度(获取元素个数)
print(len(scores))
len(列表)
四、添加到列表元素
skills=[]
print(skills)
1.append函数
在列表的末尾添加一个元素
列表.append(元素)
kills.append('气体源流')
print(skills)
skills.append('拘灵遣将')
print(skills)
2.insert函数
列表.insert(下标,元素)
在列表的指定的下标前面插入一个元素,可以越界,前面或者后面
skills.insert(0,'通天路')
print(skills)
skills.insert(-10,'真的是你')
print(skills)
3.列表相加+
将列表2中的元素添加到列表1中创建一个新的列表
就是拼接在一起
new_skills=skills+['风后奇门','阿威十八嗣']
print(new_skills)
练习:从控制台输入十个学生的成绩,保存在一个列表中
scores = []
for _ in range(10):
score =float(input('>>>'))
scores.append(scores)
print(scores)
五、删除列表元素
1.del语句
del可以删除任何数据
del列表[下标]:删除列表中指定下标的元素
不管是添加元素,还是删除元素,都会重新分配下标
这里的下标不可以越界
films = ['肖生克的救赎','阿甘正传','摔跤吧爸爸','逃学威龙','赌神','赌圣']
del films[1]
print(films)
2.remove方法
列表.remove(元素):删除列表中指定的元素,如果该元素有多个,只删除最前面的那个
films.remove('逃学威龙')
print(films)
3.pop方法
列表.pop():将列表中最后一个元素取出来
列表.pop(下标):将列表中指定下标的元素取出来
注意:这里的下标也是不能越界的
print('*********')
print(films)
new_films=films.pop()
print(new_films)
new_films2=films.pop(1)
print(new_films2)
print('********')
练习 scores=[22,24,45,6,77,88,34,56]
删除小于60的成绩
scores=[22,24,45,6,77,88,34,56]
for item in scores[:]:
if item<60:
scores.remove(item)
print(scores)
new_scores = scores[:]
for item in new_scores:
六、修改列表的元素
通过下标获取元素,然后重新赋值:列表名[下标]=新的值,这里的下标是不可以越界的
names=['周润发','路飞','刘德华','杨洋','黄渤']
names[-1]='张学友'
print(names)
七、列表其他操作
(1)len(列表):获取列表的长度
print(len([1,2,3,4,5]))
(2)+ 拼接
[列表1]+[列表2]:让列表1和列表2的元素组合在一起,然后产生新的列表
print([1,2,3]+[5,6,7]):数字和数字相加,字符串和字符串想加
(3)列表数字:让列表中的元素重复,产生新的列表
print([1,2]3)
(4)in ,not in
元素 in 列表;判断指定是否在列表中 is也是
names=['周润发','路飞','刘德华','杨洋','黄渤']
result='高飞'not in names
print(result)
八、获取列表中最大和最小元素
max(列表)
min(列表)
print(max([1,2,3,45]))
print(max(['a','b','z']))
混合的一般不作判断
list=[1,2,3,45,66,7,88,76]
print(max(list))
max:后面的每个和第一个比,若比它大,则赋值给它
number=[2,45,445,66]
max1=number[0]
for x in number:
if x >max1:
max1=x
print(max1)
九、其他操作
(1)count:获取指定元素在列表中出现的次数
number=[2,45,445,66,2,2,3]
print(number.count(2))
(2)extend:list.extend(序列):将序列中的每一个元素,添加到列表中
number=[2,45,445,66,2,2,3]
number.extend([11]),可以[],不可以字符串
print(number)
(3)index:获取指定元素在指定列表中的索引(如果多个,取第一个)
names=['周润发','路飞','刘德华','杨洋','黄渤']
print(names.index('刘德华'))
(4)列表.reverse()反向列表,就是直接操作原来列表
numbers=[1,2,3,4]
numbers.reverse()
print(numbers)
(5)列表.sort():对列表进行排序
numbers=[1,22,13,4]
numbers.sort()
print(numbers)
numbers=[1,22,13,4]
numbers.sort(reverse=True)
print(numbers)
(6)列表.clear();清空列表中的元素
numbers=[1,22,13,4]
numbers.clear()
print(numbers)
相当于是[]
(7)列表.copy():将列表中的元素全部复制一份创建一个新的列表
numbers=[1,22,13,4]
new_numbers=numbers.copy()
new_numbers=numbers[:]
new_numbers[2]=11
通过一个列表变量给另一个列表变量赋值的时候,赋的是地址,两个列表对元素操作的时候会相互影响
想要避免,就用切片,和copy()
网友评论