day5-練習(xí)和列表

1.輸入輸出函數(shù)

1.輸出函數(shù):print()
  • 1.默認(rèn)每一個print函數(shù),輸出完內(nèi)容后會輸出一個換行
  • 2.一個print函數(shù)輸出多個內(nèi)容的時候,內(nèi)容之間是用空格隔開的
  • 3.內(nèi)容后邊加end=來設(shè)置結(jié)束標(biāo)志(默認(rèn)是'\n').
  • 4.通過設(shè)置sep的值,來設(shè)置多個內(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ù)會阻塞線程,程序執(zhí)行到input的時候會停下來等待用戶的輸入,輸入完成后才會接著執(zhí)行下面的內(nèi)容
  • 3.接收到的數(shù)據(jù)是以字符串的形式返回的(python2.x中輸入的是數(shù)字的時候,可能返回int類型或者浮點(diǎn)型數(shù)據(jù))
value = input("請輸入一個整數(shù):")
print('name',value,type(value))
print("=======")
  • 猜數(shù)字游戲

隨機(jī)產(chǎn)生一個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("請輸入一個整數(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):用來存儲多個數(shù)據(jù)的一種數(shù)據(jù)類型
  • 特點(diǎn):
    1.有序的
    2.可變的(可變指的是容器中的內(nèi)容的個數(shù)和值可變)
    3.元素可以是任何類型的數(shù)據(jù)
  • 列表的值:用[]將列表中的元素括起來,多個元素之間用逗號隔開。[] ->空列表
1.怎么聲明一個列表
  • 聲明一個變量,賦一個列表值
list1 = []   #創(chuàng)建一個空的列表
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.獲取列表元素
  • 列表中的每一個元素都對應(yīng)一個下標(biāo):.0-列表長度-1;-1-列表長度
    names = ['路飛','佐羅','娜美','鳴人','佐助']

  • a.獲取單個元素:列表名[下標(biāo)]

下標(biāo)不能越界
print(names[0])
print(names[3])
  • b.獲取部分元素(切片)

  • 列表名[起始下標(biāo):結(jié)束下標(biāo)]:獲取從起始下標(biāo)開始,到結(jié)束下標(biāo)前的所有的元素。結(jié)果是一個列表

  • 列表名[起始下標(biāo):結(jié)束下標(biāo):步進(jìn)] 從起始下標(biāo)開始,每次下標(biāo)值加步進(jìn)獲取下一個元素直到結(jié)束下標(biāo)前為止

  • 起始下標(biāo)和結(jié)束下標(biāo)都可以缺省:如果步進(jìn)是正數(shù),起始下標(biāo)缺省就是從第一個元素開始獲取;如果步進(jìn)是負(fù)數(shù)就從最后一個元素開始獲取;結(jié)束下標(biāo)缺省,步進(jìn)是正數(shù),獲取到最后一個元素;步進(jìn)是負(fù)數(shù),從后往前獲取到第一個元素

print(names[1:4])
print(names[-4:-1])
print(names[0:4:2])
print(names[:])  #獲取列表中所有的元素,重新創(chuàng)建一個新的列表
  • c.一個一個的獲取列表的所有元素(遍歷列表)
    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.獲取列表的長度(獲取列表元素的個數(shù))
    print(len(scores))

3.添加列表元素

  • 添加列表元素
skills = []
print(skills)
1.append函數(shù)

列表.append(元素)
在列表的末尾添加一個元素

skills.append('氣體源流')
print(skills)
skills.append('拘靈遣將')
print(skills)
2.insert函數(shù)

列表.insert(下標(biāo),元素)
在列表的指定的下標(biāo)前插入一個元素
注意:在這兒,下標(biāo)可以越界,如果越界,就會插入到列表的最前面或者最后面

skills.insert(1,'通天箓')  #在列表的最前面插入一個元素
print(skills)
3. +

列表1+列表2
將列表2中的元素和列表1中的元素合并后創(chuàng)建一個新的列表

new_skills = skills+['風(fēng)后奇門','阿威十八式']
print(new_skills)
  • 練習(xí):從控制臺輸入10個學(xué)生的成績,然后保存在一個列表中
scores = []
for i in range(10):
    score = float(input('>>>'))
    scores.append(score)
print(scores)

4.刪除列表元素

  • 注意:不管是添加元素還是刪除元素,都會重新分配下標(biāo)
films = ['肖申克的救贖','阿甘正傳','摔跤吧爸爸','逃學(xué)威龍','賭神','賭圣','英雄本色']
1.del 語句
  • del可以刪除任何數(shù)據(jù)
  • del 列表[下標(biāo)]:刪除列表中指定下標(biāo)的元素
  • 注意:這兒的下標(biāo)不能越界
del films[1]
print(films)
2.remve方法
  • 列表.remove(元素):刪除列表中指定的元素(如果同一個元素有多個,只刪除最前面的哪一個)
  • 注意:如果要刪除的元素不在列表中,會報錯
films.remove('逃學(xué)威龍')
print(films)
3.pop方法
  • 列表.pop():將列表中的最后一個元素取出來
  • 列表.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)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容