1.輸入輸出函數(shù)
1.輸出函數(shù):print()
- 1.默認(rèn)每一個(gè)print函數(shù),輸出完內(nèi)容后會(huì)輸出一個(gè)換行
- 2.一個(gè)print函數(shù)輸出多個(gè)內(nèi)容的時(shí)候,內(nèi)容之間是用空格隔開的
- 3.內(nèi)容后邊加end=來設(shè)置結(jié)束標(biāo)志(默認(rèn)是'\n').
- 4.通過設(shè)置sep的值,來設(shè)置多個(gè)內(nèi)容之間的間隔符(默認(rèn)是'')
print('aaa',100,end = '\n',sep=',')
print('bbb')
print("=======")
2.輸入函數(shù):input()函數(shù)
- 1.input()函數(shù)可以接受從控制臺輸入的內(nèi)容(以回車為結(jié)束標(biāo)志)
- 2.input函數(shù)會(huì)阻塞線程,程序執(zhí)行到input的時(shí)候會(huì)停下來等待用戶的輸入,輸入完成后才會(huì)接著執(zhí)行下面的內(nèi)容
- 3.接收到的數(shù)據(jù)是以字符串的形式返回的(python2.x中輸入的是數(shù)字的時(shí)候,可能返回int類型或者浮點(diǎn)型數(shù)據(jù))
value = input("請輸入一個(gè)整數(shù):")
print('name',value,type(value))
print("=======")
- 猜數(shù)字游戲
隨機(jī)產(chǎn)生一個(gè)1-100的整數(shù)
輸入的數(shù)字如果和產(chǎn)生的隨機(jī)數(shù)是一樣的,就提示猜對了,并且游戲結(jié)束
如果輸入的數(shù)大于或者小于隨機(jī)數(shù),就提示輸入的數(shù)字偏大或者偏小,然后讓其重新輸入
import random
num = random.randint(1,101)
count = 0
print("=====歡迎進(jìn)入猜數(shù)字高級游戲=====")
while True:
value = int(input("請輸入一個(gè)整數(shù):"))
count += 1
if value == num:
if count >= 6:
print('智商欠費(fèi)!')
if count == 1:
print("牛逼!")
print("恭喜你,猜對啦!")
break
if value > num:
print("輸入數(shù)字大了!")
else:
print("輸入的數(shù)字小了!")
2.列表
- 列表、字典、元組、集合都是序列,都是容器類型的數(shù)據(jù)類型
- 列表(list):用來存儲(chǔ)多個(gè)數(shù)據(jù)的一種數(shù)據(jù)類型
- 特點(diǎn):
1.有序的
2.可變的(可變指的是容器中的內(nèi)容的個(gè)數(shù)和值可變)
3.元素可以是任何類型的數(shù)據(jù) - 列表的值:用[]將列表中的元素括起來,多個(gè)元素之間用逗號隔開。[] ->空列表
1.怎么聲明一個(gè)列表
- 聲明一個(gè)變量,賦一個(gè)列表值
list1 = [] #創(chuàng)建一個(gè)空的列表
print(type(list1))
list2 = [1,2.2,'abc',[1,2,3],{'a':1}]
print(list2)
2.將其他的數(shù)據(jù)類型轉(zhuǎn)換成列表
list3 = list('abc')
print(list3)
list4 = list(i*2 for i in range(10)if i % 3 ==0)
print(list4)
list5 = list(i for i in range(10)if i % 3 ==0)
print(list5)
3.獲取列表元素
列表中的每一個(gè)元素都對應(yīng)一個(gè)下標(biāo):.0-列表長度-1;-1-列表長度
names = ['路飛','佐羅','娜美','鳴人','佐助']
a.獲取單個(gè)元素:列表名[下標(biāo)]
下標(biāo)不能越界
print(names[0])
print(names[3])
b.獲取部分元素(切片)
列表名[起始下標(biāo):結(jié)束下標(biāo)]:獲取從起始下標(biāo)開始,到結(jié)束下標(biāo)前的所有的元素。結(jié)果是一個(gè)列表
列表名[起始下標(biāo):結(jié)束下標(biāo):步進(jìn)] 從起始下標(biāo)開始,每次下標(biāo)值加步進(jìn)獲取下一個(gè)元素直到結(jié)束下標(biāo)前為止
起始下標(biāo)和結(jié)束下標(biāo)都可以缺省:如果步進(jìn)是正數(shù),起始下標(biāo)缺省就是從第一個(gè)元素開始獲取;如果步進(jìn)是負(fù)數(shù)就從最后一個(gè)元素開始獲取;結(jié)束下標(biāo)缺省,步進(jìn)是正數(shù),獲取到最后一個(gè)元素;步進(jìn)是負(fù)數(shù),從后往前獲取到第一個(gè)元素
print(names[1:4])
print(names[-4:-1])
print(names[0:4:2])
print(names[:]) #獲取列表中所有的元素,重新創(chuàng)建一個(gè)新的列表
c.一個(gè)一個(gè)的獲取列表的所有元素(遍歷列表)
scores = [12,89,67,55,96,82]
for 循環(huán)遍歷
for item in scores:
print(item)
- while循環(huán)
index = 0
while index < len(scores):
print(scores[index])
index += 1
- 3.獲取列表的長度(獲取列表元素的個(gè)數(shù))
print(len(scores))
3.添加列表元素
- 添加列表元素
skills = []
print(skills)
1.append函數(shù)
列表.append(元素)
在列表的末尾添加一個(gè)元素
skills.append('氣體源流')
print(skills)
skills.append('拘靈遣將')
print(skills)
2.insert函數(shù)
列表.insert(下標(biāo),元素)
在列表的指定的下標(biāo)前插入一個(gè)元素
注意:在這兒,下標(biāo)可以越界,如果越界,就會(huì)插入到列表的最前面或者最后面
skills.insert(1,'通天箓') #在列表的最前面插入一個(gè)元素
print(skills)
3. +
列表1+列表2
將列表2中的元素和列表1中的元素合并后創(chuàng)建一個(gè)新的列表
new_skills = skills+['風(fēng)后奇門','阿威十八式']
print(new_skills)
- 練習(xí):從控制臺輸入10個(gè)學(xué)生的成績,然后保存在一個(gè)列表中
scores = []
for i in range(10):
score = float(input('>>>'))
scores.append(score)
print(scores)
4.刪除列表元素
- 注意:不管是添加元素還是刪除元素,都會(huì)重新分配下標(biāo)
films = ['肖申克的救贖','阿甘正傳','摔跤吧爸爸','逃學(xué)威龍','賭神','賭圣','英雄本色']
1.del 語句
- del可以刪除任何數(shù)據(jù)
- del 列表[下標(biāo)]:刪除列表中指定下標(biāo)的元素
- 注意:這兒的下標(biāo)不能越界
del films[1]
print(films)
2.remve方法
- 列表.remove(元素):刪除列表中指定的元素(如果同一個(gè)元素有多個(gè),只刪除最前面的哪一個(gè))
- 注意:如果要?jiǎng)h除的元素不在列表中,會(huì)報(bào)錯(cuò)
films.remove('逃學(xué)威龍')
print(films)
3.pop方法
- 列表.pop():將列表中的最后一個(gè)元素取出來
- 列表.pop(下標(biāo)):將列表中指定下標(biāo)的元素取出來
- 注意:這里的下標(biāo)不能越界
print(films)
film = films.pop()
print(films,film)
film = films.pop(1)
print(films,film)
- 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)