python學習-練習題


1、使用while循環輸入 1 2 3 4 5 6     8 9 10

# cat lx.py 
#!/usr/local/bin/python3.6


#鄒姣姣
#使用while循環輸入 1 2 3 4 5 6     8 9 10

i = 1
while i < 11:
    if i == 7:
        print("  ",end=" ")  # 可用pass關鍵字,什么都不執行
    else:
        print(i,end=" ")
    i = i + 1
print(" ")

執行結果:

# ./lx.py   
1 2 3 4 5 6    8 9 10  

 

2、求1-100的所有數的和

[root@localhost python3練習]# cat lx1.py 
#!/usr/local/bin/python3.6


#鄒姣姣
#求1-100的所有數的和
i = 1
sum1 = 0
sum2 = 0

print("while循環1到100的和:")
while i <= 100:
    if i != 100:
       print(i,end="+")
    else:
       print(i,end="=")
    sum1 = sum1 + i
    i = i+1
    
print(sum1)


print("for循環1到100的和:")
for j in  range(1,101):
    if j != 100:
        print(j,end="+")
    
    else:
        print(j,end="=")
    sum2 = sum2 + j
print(sum2)

執行結果:

[root@localhost python3練習]# ./lx1.py  
while循環1到100的和:
1+2+3+4+5+6+7+8+9+10+11+12+13+14+15+16+17+18+19+20+21+22+23+24+25+26+27+28+29+30+31+32+33+34+35+36+37+38+39+40+41+42+43+44+45+46+47+48+49+50+51+52+53+54+55+56+57+58+59+60+61+62+63+64+65+66+67+68+69+70+71+72+73+74+75+76+77+78+79+80+81+82+83+84+85+86+87+88+89+90+91+92+93+94+95+96+97+98+99+100=5050
for循環1到100的和:
1+2+3+4+5+6+7+8+9+10+11+12+13+14+15+16+17+18+19+20+21+22+23+24+25+26+27+28+29+30+31+32+33+34+35+36+37+38+39+40+41+42+43+44+45+46+47+48+49+50+51+52+53+54+55+56+57+58+59+60+61+62+63+64+65+66+67+68+69+70+71+72+73+74+75+76+77+78+79+80+81+82+83+84+85+86+87+88+89+90+91+92+93+94+95+96+97+98+99+100=5050

 

3、輸出 1-100 內的所有奇數,輸出 1-100 內的所有偶數

[root@localhost python3練習]# cat lx2.py 
#!/usr/local/bin/python3.6


#鄒姣姣
#輸出 1-100 內的所有奇數,偶數

print("1-100內的所有奇數:")
for i in range(1,101):
    if i%2 != 0 :
        print(i,end=" ")

print("\n1-100內的所有偶數:")
for i in range(1,101):
    if i%2 == 0 :
        print(i,end=" ")
    
print()

執行結果:

[root@localhost python3練習]# ./lx2.py   
1-100內的所有奇數:
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99 
1-100內的所有偶數:
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100 

 

4、求1-2+3-4+5 ... 99的所有數的和

[root@localhost python3練習]# cat lx3.py 
#!/usr/local/bin/python3.6


#鄒姣姣
#求1-2+3-4+5 ... 99的所有數的和

i=int(input("請輸入需要求和的最終數字:"))
if i%2 == 0:
    sum1 = 0  - i / 2
else:
   sum1 = i - (i-1) / 2  

print("1-2+3-4+5 ... {} 的所有數的和為 {}".format(i,sum1))

執行結果:

[root@localhost python3練習]# ./lx3.py   
請輸入需要求和的最終數字:99
1-2+3-4+5 ... 99 的所有數的和為 50.0

 

5、用戶登陸(三次機會重試)

[root@localhost python3練習]# cat lx4.py 
#!/usr/local/bin/python3.6


#鄒姣姣
#用戶登陸(三次機會重試)

username='zoujiaojiao'
password='12345678'
i = 0
while i < 3:
    name=input("請輸入登錄賬戶:")
    if name != 'zoujiaojiao':
        print("沒有此用戶")
    else:
        pword=input("請輸入密碼:")
        if pword != '12345678':
            print("密碼錯誤!")
        else:
print("登錄成功!")
break i = i + 1 print(" ")

執行結果:

[root@localhost python3練習]# ./lx4.py
請輸入登錄賬戶:zoujiaojiao
請輸入密碼:1
密碼錯誤!
請輸入登錄賬戶:zoujiaojiao
請輸入密碼:12345678
登錄成功!

[root@localhost python3練習]# ./lx4.py
請輸入登錄賬戶:zoujiaojiao
請輸入密碼:1
密碼錯誤!
請輸入登錄賬戶:z
沒有此用戶
請輸入登錄賬戶:zoujiaojiao
請輸入密碼:3
密碼錯誤!

 6、元素分類

有如下值集合 [11,22,33,44,55,66,77,88,99,90...],將所有大於 66 的值保存至字典的第一個key中,將小於 66 的值保存至第二個key的值中。
即: {'k1': 大於66的所有值, 'k2': 小於66的所有值}

[root@localhost python3練習]# cat lx5.py    
#!/usr/local/bin/python3.6


#鄒姣姣
#有如下值集合 [11,22,33,44,55,66,77,88,99,90...],將所有大於 66 的值保存至字典的第一個key中,將小於 66 的值保存至第二個key的值中。

li = [11, 22, 33, 55, 66, 44, 77, 88, 99, 100]

#for循環找出數值,加入到字典中
li1 = []
li2 = []
dic = {}
for i in li:
    if i > 66:
        li1.append(i)
    elif i < 66:
        li2.append(i)
dic.update(k1=li1, k2=li2)
print("dic:",dic)

#用if字句做個過濾,將大於66和小於66的進行分類后加入到字典中
dic1={}
li3 = [ i for i in li if i > 66]
li4 = [ i for i in li if i < 66]
dic1.update(k1=li3, k2=li4)
print("dic1:",dic1)

執行結果:

[root@localhost python3練習]# ./lx5.py   
dic: {'k1': [77, 88, 99, 100], 'k2': [11, 22, 33, 55, 44]}
dic1: {'k1': [77, 88, 99, 100], 'k2': [11, 22, 33, 55, 44]}

 

7、查找

查找列表中元素,移除每個元素的空格,並查找以 a或A開頭 並且以 c 結尾的所有元素。
    li = ["alec", " aric", "Alex", "Tony", "rain"]
    tu = ("alec", " aric", "Alex", "Tony", "rain") 
    dic = {'k1': "alex", 'k2': ' aric',  "k3": "Alex", "k4": "Tony"}
[root@localhost python3練習]# cat lx6.py  
#!/usr/local/bin/python3.6


#鄒姣姣
#查找列表中元素,移除每個元素的空格,並查找以 a或A開頭 並且以 c 結尾的所有元素。

li = ["alec", " Aric", "Alex", "Tony", "rain"]
tu = ("alec", " aric", "Alex", "Tony", "rain") 
dic = {'k1': "alex", 'k2': ' aric',  "k3": "Alex", "k4": "Tony"}
print("li元素處理情況:")
li2 = [li2.strip() for li2 in li]
for s in li2:
    if s.startswith("a") or s.startswith("A") and s.endswith("c"):
        print(s)
print(li2)

print("tu元素處理情況:")
li3 = list(tu)
li4 = [li4.strip() for li4 in li3]
for s in li4:
    if s.startswith("a") or s.startswith("A") and s.endswith("c"):
        print(s)
print(tuple(li4))

print("dic元素處理情況:")
dic2 = {}
for i,v in dic.items():
    v=v.strip()
    dic2.setdefault(i,v)
    if v.startswith("a") or v.startswith("A") and v.endswith("c"):
        print(i,":",v)
print(dic2)

執行結果:

[root@localhost python3練習]# ./lx6.py   
li元素處理情況:
alec
Aric
['alec', 'Aric', 'Alex', 'Tony', 'rain']
tu元素處理情況:
alec
aric
('alec', 'aric', 'Alex', 'Tony', 'rain')
dic元素處理情況:
k1 : alex
k2 : aric
{'k1': 'alex', 'k2': 'aric', 'k3': 'Alex', 'k4': 'Tony'}

 

 
8、 輸出商品列表,用戶輸入序號,顯示用戶選中的商品
    商品 li = ["手機", "電腦", '鼠標墊', '游艇']
[root@localhost python3練習]# cat lx7.py   
#!/usr/local/bin/python3.6


#鄒姣姣
#輸出商品列表,用戶輸入序號,顯示用戶選中的商品

li = ["手機", "電腦", '鼠標墊', '游艇']
count = 1
print("商場有以下商品:")
for i in li:
    print("{} : {}".format(count,i))
    count = count + 1

n = int(input("請輸入序號:"))
print(li[n-1])

執行結果:

[root@localhost python3練習]# ./lx7.py   
商場有以下商品:
1 : 手機
2 : 電腦
3 : 鼠標墊
4 : 游艇
請輸入序號:4
游艇

 

 
9、購物車

功能要求:

  • 要求用戶輸入總資產,例如:2000
  • 顯示商品列表,讓用戶根據序號選擇商品,加入購物車
  • 購買,如果商品總額大於總資產,提示賬戶余額不足,否則,購買成功。
  • 附加:可充值、某商品移除購物車
[root@localhost python3練習]# cat lx8.py     
#!/usr/local/bin/python3.6


#鄒姣姣
#功能要求:
#
#要求用戶輸入總資產,例如:2000
#顯示商品列表,讓用戶根據序號選擇商品,加入購物車
#購買,如果商品總額大於總資產,提示賬戶余額不足,否則,購買成功。
#附加:可充值、某商品移除購物車
#

li = [["手機",3000], ["電腦",5000], ['鼠標墊',20], ['游艇',300000]]
count = 1
money = int(input("請輸入總資產:"))
shopping_cart = []

print("商場有以下商品:")
for i in li:
    print("{} : {} 價格 {} 元".format(count,i[0],i[1]))
    count = count + 1

print("選擇商品序列號加入購物車,選擇完畢請輸入ok")
n = 0
while str(n) != "ok":
    n = input()
    if n != "ok":
        shopping_cart.append(li[int(n) - 1])
print("已經加入購物車的商品:{}".format([x[0] for x in shopping_cart]))

print("選擇商品序列號將該商品移除購物車,移除完畢請輸入ok")
nn = 0
while str(nn) != "ok":
    nn = input()
    if nn != "ok":
        del shopping_cart[int(nn)-1]
print("已經加入購物車的商品:{}".format([x[0] for x in shopping_cart]))

v = 0
for j in li:
    j = j[1]
    v = v + int(j)    
print("商品總價:{}".format(v))

mm = 0
if money - v > 0:
    print("購買成功!")
    print("購物車已經清空!")
    shopping_cart.clear()
else:
    nnn = input("賬戶余額不足!充值請輸入ok后進行充值")
    if nnn == "ok":
        mm = int(input("充值金額:"))
        print("賬戶總資產:{}".format(money + mm))

執行結果:

[root@localhost python3練習]# ./lx8.py   
請輸入總資產:1234
商場有以下商品:
1 : 手機 價格 30002 : 電腦 價格 50003 : 鼠標墊 價格 204 : 游艇 價格 300000 元
選擇商品序列號加入購物車,選擇完畢請輸入ok
1
2
ok
已經加入購物車的商品:['手機', '電腦']
選擇商品序列號將該商品移除購物車,移除完畢請輸入ok
1
ok
已經加入購物車的商品:['電腦']
商品總價:308020
賬戶余額不足!充值請輸入ok后進行充值ok
充值金額:10000
賬戶總資產:11234

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM