python基礎知識練習題(二)

来源:https://www.cnblogs.com/HGJBKY/archive/2019/04/23/10758559.html
-Advertisement-
Play Games

1、 有兩個列表 l1 = [11, 22, 33] l2 = [22, 33, 44] a.獲取內容相同的元素列表 li = []l1 = [11, 22, 33] l2 = [22, 33, 44] for v1 in l1: for v2 in l2: if v1 == v2: li.appe ...


1、 有兩個列表

  l1 = [11, 22, 33]

  l2 = [22, 33, 44]

   a.獲取內容相同的元素列表

li = []
l1 = [11, 22, 33] l2 = [22, 33, 44] for v1 in l1: for v2 in l2: if v1 == v2:
li.append(v1)
print(li)
b.獲取l1中有,l2中沒有的元素列表
li = []
l1 = [11, 22, 33] l2 = [22, 33, 44] for v1 in l1:
if
v1 not in l2:
li.append(v1)
print(li)
c.獲取l2中有,l1中沒有的元素列表
li = []
l1 = [11, 22, 33]
l2 = [22, 33, 44]
for v2 in l2:
    if v2 not in l1:  
      li.append(v2)
print(li)
d.獲取l1和l2中內容都不同的元素
l1 = [11, 22, 33]
l2 = [22, 33, 44]
for v1 in l1:
    if v1 not in l2:
        print(v1)
for v2 in l2:
    if v2 not in l1:
        print(v2)

2、利用下劃線將列表的每一個元素拼接成字元串,li = ['alex','eric','Witharush']

li = ['alex', 'eric', 'Witharush']
print('_'.join(li))

3、有以下列表:

nums = [2,7,11,15,1,8,7]
請找到列表中任意兩個元素相加能夠等於9的元素組合,如,[(0,1),(4,5)]
nums = [2, 7, 11, 15, 1, 8, 7]
li = []
for i in nums:
    for v in nums:
        if i + v == 9:
            li.append((nums.index(i), nums.index(v)))
print(li)

4、寫代碼,有如下列表,按照要求實現每一個功能

li = ["Witharush", "eric", "rain"]
a.計算列表長度並輸出
print(len(li))
# 結果3 列表長度是指一級元素個數
b.列表中追加元素"seven",並輸出添加後的列表
li = ["Witharush", "eric", "rain"]
li.append('seven')
print(li)
c.請在列表的第一個位置插入元素"Tony",並輸出添加後的列表
li = ["Witharush", "eric", "rain"]
li.insert('Tony')
print(li)
d.請修改列表的第2個位置插入元素"Kelly",並輸出添加後的列表
li = ["Witharush", "eric", "rain"]
li.insert(1,'Kelly')
print(li)
e.請刪除列表中的元素"eric",並輸出修改後的列表
li = ["Witharush", "eric", "rain"]
li.remove('eric')
print(li)
f.請刪除列表中的第2個元素,並輸出刪除的元素的值和刪除元素後的列表
li = ["Witharush", "eric", "rain"]
print(li.pop(1))
print(li)
g.請刪除列表中的第3個元素,並輸出刪除元素後的列表
li = ["Witharush", "eric", "rain"]
li.pop(2)
print(li)
h.請刪除列表中的第2至4個元素,並輸出刪除元素後的列表
li = ["Witharush", "eric", "rain"]
del li[1:3]
print(li)
i.請將列表所有的元素反轉,並輸出反轉後的列表
li = ["Witharush", "eric", "rain"]
li.reverse()
print(li)
j.請使用for,len,range輸出列表的索引
li = ["Witharush", "eric", "rain"]
for i in range(len(li)):
print(i, li[i])
k.請使用enumrate輸出列表元素和序號(序號從100開始)
li = ["Witharush", "eric", "rain"]
for i, v in enumerate(li, 100):
  print(i, v)
l.請使用for迴圈輸出列表的所有元素
li = ["Witharush", "eric", "rain"]
for i in li:
    print(i)

5、寫代碼,有如下元祖,按照要求實現每一個功能

 tu = ('alex', 'eric', 'Witharush')
a.計算元祖長度並輸出
tu = ('alex', 'eric', 'Witharush')
print(len(tu))
b.獲取元祖的第二個元素,並輸出
tu = ('alex', 'eric', 'Witharush')
print(tu[1])
c.獲取元祖的第 1-2 個元素,並輸出
tu = ('alex', 'eric', 'Witharush')
print(tu[0:1])
d.請使用for輸出元祖的元素
tu = ('alex', 'eric', 'Witharush')
for i in tu:
    print(i)
e.請使用for,len,range輸出元素的索引
tu = ('alex', 'eric', 'Witharush')
for i in range(0, len(tu)):
    print(i, tu[i])
f.請使用enumrate輸出元祖元素和序號(序號從10開始)
tu = ('alex', 'eric', 'Witharush')
for i, v in tu.enumerate(tu, 10):
    print(i, v)

6、有如下變數,請實現要求的功能

tu = ("Witharush",[11,22,{"k1":'v1',"k2":["age","name"],"k3":(11,22,33)},44])
a.講述元祖的特性
一級元素不可被修改、被增加或者刪除
b.請問tu變數中的第一個元素"Witharush"是否可以被修改?
不能
c.請問tu變數中的"k2"對應的值是什麼類型?是否可以被修改?如果可以,請在其中添加一個元素"Seven"
列表,可以被修改
tu = ("Witharush", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3":(11, 22, 33)}, 44])
tu[1][2]["k2"].append("Seven")
print(tu)
d.請問tu變數中的"k3"對應的值是什麼類型?是否可以被修改?如果可以,請在其中添加一個元素"Seven"
元組,作為k3的vaule可以被整體替換為(11, 22, 33, "Seven"),不能直接在元組(11, 22, 33)中增加元素"Seven"
tu = ("Witharush", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3":(11, 22, 33)}, 44])
tu[1][2]["k3"] = (11, 22, 33, "Seven")
print(tu)

7、用1,2,3,4,5,6,7,8 能組成多少個互不相同且無重覆的兩位數?

n = 0
for i in range(1, 9):
    for v in range(1, 9):
        if i != v:
            n += 1
print(n)

8、九九乘法表

for i in range(1, 10):
    for v in range(1, i+1):
        print(str(i) + '*' + str(v) + '=' + str(i*v), end="\t") 
    print("\n", end="")
'''
結果:

1*1=1
2*1=2 2*2=4
3*1=3 3*2=6  3*3=9
4*1=4 4*2=8  4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

自己總結:先確定外迴圈的一個i值,遍歷內迴圈v值;然後再迴圈下一個i值,再遍歷內迴圈v值;直到遍歷i值。

'''

9、print用法中的“sep” 、"end"

兩個都是print的參數,step預設值是空格,end預設是換行符\n

10、分頁實現內容

a.通過for迴圈創建301條數據,數據類型不限,如:
Witharush-1 [email protected] pwd1
Witharush-2 [email protected] pwd2
Witharush-3 [email protected] pwd3
...
user_list = []
for i in range(1, 302):
    temp = {'姓名': 'Gru' + str(i), '郵箱': 'Gru' + str(i) + '@163.com ', '電話': '12312312312' + str(i)}
    user_list.append(temp)
print(user_list)
b.提示用戶 請輸入要查看的頁碼,當用戶輸出指定頁碼,也顯示指定數據
註意:
每頁顯示10條數據
用戶輸出頁碼是非十進位數字,也提示輸入內容格式錯誤
user_list = []
for i in range(1, 302):
    temp = {'姓名': 'Gru' + str(i), '郵箱': 'Gru' + str(i) + '@163.com ', '電話': '12312312312' + str(i)}
    user_list.append(temp)
print(user_list)
while True:
    s = input('請輸入頁碼:')
    s = int(s)
    if s not in range(1, 302//10):
        print('輸入格式錯誤!')
        continue
    n = user_list[(s-1)*10: s*10]
    for m in n:
        print(m)

11、用python開發程式自動計算方案

公雞5文錢一隻,母雞3文錢一隻,小雞3只一文錢,用100文錢買100只雞,其
中公雞,母雞,小雞都必須要有,問公雞,母雞,小雞要買多少只剛好湊足100文錢?
for g in range(1, 100//5):
    for m in range(1, 100//3):
        for x in range(1, 100):
            if g*5 + m*3 + x*1/3 == 100 and g + m + x == 100:
                print(g, m, x)

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • [TOC] 函數是第一類對象,即函數可以被當做數據處理。 函數對象的四大功能(掌握) 1.引用 2.當作參數傳給一個函數 from func 3.可以當作函數的返回值 from func 4.可以當作容器類型的元素 from func 練習(掌握) '1': 支付, '2': 提現, '3': 退出 ...
  • 一、引言 Oracle為Java提供了豐富的基礎類庫,Java 8 提供了4000多個基礎類庫,熟練掌握這些基礎類庫可以提高我們的開發效率,當然,記住所有的API是不可能也沒必要的,我們可以通過API文檔或直接網上搜索來逐漸熟悉大部分類的功能和方法,下麵我們來學習一些基礎類庫。 二、Scanner ...
  • MATLAB中“fitgmdist”的用法及其GMM聚類演算法 作者:凱魯嘎吉 - 博客園 http://www.cnblogs.com/kailugaji/ 高斯混合模型的基本原理:聚類——GMM,MATLAB官方文檔中有關於fitgmdist的介紹:fitgmdist。我之前寫過有關GMM聚類的算 ...
  • 在順序結構中,各語句是按自上而下的順序執行的,執行完上一個語句就自動執行下一個語句,是無條件的,不必作任何判斷。實際上,很多情況下,需要根據某個條件是否滿足來決定是否執行指定的操作任務,或者從給定的兩種或多種操作選擇其一。 4.1選擇結構和條件判斷 例:定義一個函數,如果餓了吃飯。如果不餓不吃飯。 ...
  • 1.首先更新pip版本的時候出現。這是出現在python2.7.16出現的問題 2.進入你的pyhton目錄下的Lib\mimetypes.py 打開它 3.在import下麵加入這代碼 4.保存退出後,重新執行更新pip命令 問題成功解決。 ...
  • 圖形圖像處理技術,gd庫的強大支持,PHP的圖像可以是PHP的強項,PHP圖形化類庫,jpgraph是一款非常好用的強大的圖形處理工具。 在PHP中載入GD庫 gd官方網址下載: 激活gd庫,修改php.in文件 驗證GD庫是否安裝成功 輸入“127.0.0.1/phpinfo.php”並按Ente ...
  • CAS(Compare-and-Swap),即比較並替換,java併發包中許多Atomic的類的底層原理都是CAS。 它的功能是判斷記憶體中某個地址的值是否為預期值,如果是就改變成新值,整個過程具有原子性。 具體體現於sun.misc.Unsafe類中的native方法,調用這些native方法,JV ...
  • 昨天老師講了建網站,還要交錢買東西的,所以就沒寫,今天講了介面與抽象類進一步加深 上完今天的課後,我才知道一個介面可以有多個實現類,一個實現類可以同時接多個介面。 現在就用代碼來解釋吧!!! 舉例用人(People)來寫 先創建一個父類: 然後 創建介面1 下邊每一個介面的方法都代表著不同的動作 創 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...