day5总结

2018-07-20  本文已影响0人  liuperson

一、输入输出函数

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)
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('*****')
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()

上一篇下一篇

猜你喜欢

热点阅读