1. 程式人生 > >Python開發【第一篇】基礎題目二

Python開發【第一篇】基礎題目二

循環 bsp 程序 大小 集合 九九乘法 出現 .com 位數

1 列表題

l1 = [11, 22, 33]
l2 = [22, 33, 44]
# a. 獲取l1 中有,l2中沒有的元素
for i in l1:
    if i not in l2:
        print(i)  # 11
# b. 獲取l2 中有,l1中沒有的元素列表
for i in l2:
    if i not in l1:
        print(i)  # 44
# c. 獲取l1  和 l2 中內容相同的元素
for i in l1:
    if i in l2:
        print(i, end=" ")  # 22 33
# d. 獲取l1 和 l2中都互相沒有的元素 for i in l2: if i not in l1: print(i, end=" ") # 44 for i in l1: if i not in l2: print(i, end=" ") # 11

2.有 1,2,3,4,5,6,7,8, 8位數字,輸出兩位元素互不相同的個數

count = 0
a = [1, 2, 3, 4, 5, 6, 7, 8]
b = [1, 2, 3, 4, 5, 6, 7, 8]
for i in a:
    for
j in b: if i != j: count += 1 print(count) # 56 # 2_1.有 1,2,3,4,5,6,7,8, 8位數字,輸出兩位元素互不相同且數字不重復出現的個數 count = 0 a = [1, 2, 3, 4, 5, 6, 7, 8] b = [1, 2, 3, 4, 5, 6, 7, 8] for i in range(1, len(a) + 1): for j in range(i + 1, len(b) + 1): count += 1 print(count) #
28

3. 九九乘法表 正三角

for i in range(1,10):
    for j in range(1,10):
        if  i>= j:
            print("%s * %s = %s"%(j,i,i*j),end=\t)
    print()

4 九九乘法表 倒三角

for i in range(1,10):
    for j in range(1,10):
        if j >= i:
            print("%s * %s = %s"%(i,j,j*i),end="\t")
        else:
            print("%s"%" "*12,end="")
    print()

5 用Python開發程序自動計算方案

# 公雞5文錢一只,母雞3文錢一只,小雞3只一文錢,用100文錢買100只雞,其中公雞,母雞,小雞都必須要有,問公雞,母雞,小雞,小雞要買多少只剛好湊夠100文錢?
for i in range(1, 100 // 5):
    for j in range(1, 100 // 3):
        for z in range(1, 100):
            if i + j + z == 100 and 5*i + 3*j + z/3.0 == 100:
                print(i,j,z)
                """
                4 18 78
                8 11 81
                12 4 84 
                """

6 用下劃線將列表的每一個元素拼接為字符串 [‘tang‘,‘lao‘,‘er‘]

# 註意: 此方法只適用於元素都是str類型
li = [tang,lao,er]
v = "_".join(li)
print(v) # tang_lao_er

# 6_1 裏面有數字的列表拼接為字符串
li = [tang,lao,er,123]
v = "_".join("%s" %i for i in li)
print(v) # tang_lao_er_123

# 6_2 裏面有多種數據類型的拼接為字符串
li = [tang,lao,er,[11,22],True]
v = "_".join("%s" %i for i in li)
print(v) # tang_lao_er_[11, 22]_True

7 有一元組(‘tang‘,‘lao‘,‘er‘) 寫代碼,實現以下功能

tu = (tang,lao,er,)
# a. 計算長度
print(len(tu))
# b. 獲取元組的第2-3個元組,並輸出
print(tu[1:3]) # (‘lao‘, ‘er‘)
    # 註意: 切片索引超出分界大小 不會報錯
print(tu[1:10]) # (‘lao‘, ‘er‘)
print(tu[10:]) # ()

# c. 請使用for輸出元組的元素
for i in tu:
    print(i,end=" ") # tang lao er
print()
# d. 請使用for、 len 、range輸出元組的索引
for i in range(len(tu)):
    print(i,end=" ") # 0 1 2
print()

# f. 請使用enumrate輸出元組元素和序號(序號從10開始)
for key, value in enumerate(tu,10):
    print((key,value),end=" ") # (10, ‘tang‘) (11, ‘lao‘) (12, ‘er‘)

8. 有如下變量,請實現要求的功能

tu = ("tang",[11,22,{"k1":"v1","k2":["age","name"],"k3":(11,22,33)},44])
# a.元組的特性
#元組不可變類型 不可增刪改

#b. 第一個元素"tang", 是否可修改
#

# c "k2"對應的值是什麽類型?是否可改,如果可以,請在其中增加一個元素"san"
# 列表類型 可改
tu[1][2]["k2"].append("san")
print(tu[1][2]["k2"]) #  [‘age‘, ‘name‘, ‘san‘]

# d "k2"對應的值是什麽類型?是否可改,如果可以,請在其中增加一個元素"san"
# 元組類型 不可改

9. bool值為False的

記法 6+1
6=3+3:3括號 {} [] ()  3個基本類型 整型=0、字符串=""、bool= False
1:None

10. 求一列表任意兩個值相加等於9 的元素集合

nums = [2,7,11,25,1,8,7]
a = []
for i in nums:
    for j in nums:
        if i+j == 9:
            a.append((i,j))
print(a) # [(2, 7), (2, 7), (7, 2), (1, 8), (8, 1), (7, 2)]

# 10_1 求一列表任意兩個值相加等於9 的索引元素集合
nums = [2,7,11,25,1,8,7]
a = []
for i in range(len(nums)):
    for j in range(len(nums)):
        if nums[i]+nums[j] == 9:
            a.append((i,j))
print(a) # [(0, 1), (0, 6), (1, 0), (4, 5), (5, 4), (6, 0)]

11 列表反轉

li =  [11,22,33,44]
li.reverse()
print(li) # [44, 33, 22, 11]

12 分頁顯示內容

# a 通過for循環創建302條數據,數據類型不限,如:
user_list = [
    {name:tang1,email:[email protected],pwd:tangpwd1}
]
for i in range(1,302):
    temp = {name:"tang"+str(i),email:[email protected]+str(i),pwd:pwd+str(i)}
    user_list.append(temp)
# print(user_list)

#b 提示用戶輸入頁碼,每頁10行數據,根據用戶輸入的頁碼返回數據
while True:
    s = input(請輸入1,2..30頁碼:)
    s = int(s)
    start = (s-1) * 10
    end = s * 10
    result = user_list[start:end]
    for item in result:
        print(item)

13 三級菜單

db ={
    "北京":{
        "昌平":{"沙河":{}},
        "海澱":{},
        "朝陽":{},
    },
    "廣州":{
        "天河":{"天河城"},
        "海珠":{"侖頭村"},
    }
}
path = []
while True:
    temp = db
    for item in path:
        temp = temp[item] # temp 指向最後一個節點 path = ["北京", "昌平","沙河"]
    print("當前節點的所有子節點:",list(temp.keys()))

    choice = input(1:添加節點 2:查看節點 (Q 退出 | B 返回上一級)\n >>>)
    if choice == "1":
        name = input("請輸入要插入的節點名稱>>>")
        if name in temp:
            print("節點已經存在")
        else:
            temp[name] = {}
    elif choice == "2":
        name = input("請輸入要查看的節點名稱>>>")
        if name in temp:
            path.append(name)
        else:
            print("不存在此節點名稱")
    elif choice.lower() == "b":
        if path:
            path.pop()
    elif choice.lower() == q:
        break
    else:
        print(輸入錯誤,請重新輸入:)





Python開發【第一篇】基礎題目二