日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

嵩天老师-Python语言程序设计-Python123配套练习测验题目汇总整理

發布時間:2023/12/8 python 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 嵩天老师-Python语言程序设计-Python123配套练习测验题目汇总整理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

測驗1:Python基本語法元素

知識點概要:

  • 普遍認為Python語言誕生于1991
  • Python語言中的縮進在程序中長度統一且強制使用,只要統一即可,不一定是4個空格(盡管這是慣例)
  • IPO模型指:Input Process Output
  • 字符串的正向遞增和反向遞減序號體系:正向是從左到右,0到n-1,反向是從右到左,-1到-n,舉例
str = "csdn" #str[0]就表示字符串c, str[-1]表示"n"
  • Python的合法命名規則:命名包含字母,數字,下劃線,但是首字符不能是數字
  • Python中獲得用戶輸入的方式為:input()
  • Python中的保留字:type不是,是內置函數,def elif import 都是保留字
  • Python的數據類型有整數、列表、字符串等,但是不包括實數,實數是數學概念,在Python中對應著浮點數
  • 保留字if-elif-else用于表示分支結構,in用來進行成員判斷
  • print()格式化輸出,控制浮點數的小數點后兩位輸出應為:print("{:.2f}".format(XX)) :.2f哪一個都不能少

編程測試:

  • Hello World 的條件輸出:獲得用戶輸入的一個整數,參考該整數值,打印輸出"Hello World",要求:????????????????????????????????????????????????????????????????????????????????????????????????
    如果輸入值是0,直接輸出"Hello World"????????????????????????????????????????????????????????????????????????????????????????????????
    如果輸入值大于0,以兩個字符一行方式輸出"Hello World"(空格也是字符)????????????????????????????????????????????????????????????????????????????????????????????????
    如果輸入值小于0,以垂直方式輸出"Hello World"
# eval()函數可以將默認輸入的字符串去掉雙引號并進行表達式運算,如輸入500+20,默認 #得到的輸入為一個字符串“500+20”,但是使用eval()函數我們得到的是一個整型數字:520 Number = eval(input()) if Number == 0:print("Hello World") elif Number > 0:print("He\nll\no \nWo\nrl\nd") else:for c in "Hello World":print(c)
  • 數值運算:獲得用戶輸入的一個字符串,格式如下:M OP N ,其中,M和N是任何數字,OP代表一種操作,表示為如下四種:+, -, *, /(加減乘除)????????????????????????????????????????????????????????????????????????????????????????????????根據OP,輸出M OP N的運算結果,統一保存小數點后2位。????????????????????????????????????????????????????????????????????????????????????????????????
    注意:M和OP、OP和N之間可以存在多個空格,不考慮輸入錯誤情況。
print("{:.2f}".format(eval(input())))

測驗2:Python基本圖形繪制

知識點概要:

  • 正確引用turtle庫的方式:
import turtle #t是別名,可以更換其他名稱 import turtle as t from turtle import setup from turtle import *

import setup from turtle是不正確的

  • turtle庫是一個直觀有趣的圖形繪制函數庫,最早成功應用于LOGO編程語言,turtle繪圖體系以水平右側為絕對方位的0度,turtle坐標系的原點****默認在屏幕正中間
  • turtle.circle(-90,90)表示繪制一個半徑為90像素的弧形,圓心在小海龜當前行進的右側
# circle(x,y)表示以x長度為半徑,y為角度, #當前方向左側x處為圓心畫圓,其中x,y都可以是負數,相應取反 #當前方向是水平向右的,對應直角坐標系中的x軸正方向 #x為正,則圓心在y軸正方向上,y為正,逆時針畫圓,圓弧角度為y #x為負則相反,圓心在y軸負方向上,y為正,順時針畫圓,圓弧角度為y
  • turtle.seth(to_angle)函數的作用是設置小海龜當前行進方向為to_angle,to_angle是角度的整數值
  • turtle.fd(distance)函數的作用是向小海龜當前行進方向前進distance距離
  • turtle.pensize(size)函數的作用是改變畫筆的寬度為size像素
  • turtle**.circle**()函數不能繪制橢圓形
  • turtle.circle(x,y)函數繪制半圓,第二個參數y是180的奇數倍
  • turtle.penup()的別名有turtle.pu(),turtle.up()
  • turtle.colormode()的作用是設置畫筆RGB顏色的表示模式
  • turtle.width()和turtle.pensize()都可以用來設置畫筆尺寸
  • turtle.pendown()只是放下畫筆,并不繪制任何內容
  • 改變turtle畫筆的運行方向有left()、right()和seth()函數,bk()只能后退,但是不改變方向
  • turtle.done()用來停止畫筆繪制,但繪圖窗體不關閉,建議在每個turtle繪圖最后增加turtle.done()
  • 循環相關保留字是:for…in和while,def用于定義函數

編程測試:

  • turtle八邊形繪制:使用turtle庫,繪制一個八邊形
import turtle as t t.pensize(2) for i in range(8):t.fd(100)t.left(45)
  • turtle八角圖形繪制:使用turtle庫,繪制一個八角圖形
import turtle as t t.pensize(2) for i in range(8):t.fd(150)t.left(135)

測驗3:基本數據類型

知識點概要:

  • pow(x,0.5)能夠計算x的平方根,計算負數的平方根將產生復數
  • 字符串.strip()方法的功能是去掉字符串兩側指定的字符
  • 字符串.split()方法的功能是按照指定字符分隔字符串為數組
  • 字符串.repalce()方法的功能是替換字符串中特定字符
  • +操作符用來連接兩個字符串序列
  • 字符串是一個連續的字符序列,使用\n可以實現打印字符信息的換行
  • val = pow(2,1000)
    #返回val結果的長度值要使用 len(str(val)),因為整型沒有len()方法,要通過str()函數
    #將數字類型轉換為字符串
  • 正確引用time庫的方式如下:
import time from time import strftime from time import *
  • Python語言的整數類型表示十進制(一般表示)二進制(0b或0B開頭)八進制(0o或0O開頭)十六進制(0x或0X開頭)
  • %運算符的意思是取余數
  • 字符串切片操作:s[N:M],從N到M,但是不包括M
name="Python語言程序設計課程" print(name[0],name[2:-2],name[-1]) #輸出結果為:P thon語言程序設計 程
  • print("{0:3}".format('PYTHON'))代碼執行的結果是PYTHON,{0:3}表示輸出的寬度是3,但是如果字符串長度超過3就以字符串長度顯示

編程測試:

  • 平方根格式化:獲得用戶輸入的一個整數a,計算a的平方根,保留小數點后3位,并打印輸出。????????????????????????????????????????????????????????????????????????????????????????????????輸出結果采用寬度30個字符、右對齊輸出、多余字符采用加號(+)填充,????????????????????????????????????????????????????????????????????????????????????????????????如果結果超過30個字符,則以結果寬度為準
a = eval(input()) print("{:+>30.3f}".format(a**0.5)) # +是填充字符 >是右對齊 30是寬度 .3f是保留小數點后3位 #若平凡根后是一個復數,復數的實部和虛部都是浮點數,.3f可以將實部和虛部分別取三位小數
  • 字符串分段組合:獲得輸入的一個字符串s,以字符減號(-)分割s,將其中首尾兩段用加號(+)組合后輸出
InputStr = input() strs = InputStr.split('-') print(strs[0]+'+'+strs[-1]) print("{}+{}".format(strs[0], strs[-1])) #s.split(k)以k為標記分割s,產生一個列表 #通過該題目,掌握split()方法的使用,注意:k可以是單字符,也可以是字符串

測驗4:程序的控制結構

知識點概要:

  • for…in…中in的后面需要的是一個迭代類型(組合類型),{1;2;3;4;5}不是Python的有效數據類型
  • range(x,y)
for i in range(0,2):print(i) #輸出結果為:0 1
  • 程序的三種基本結構:順序結構,循環結構和分支結構
  • 循環是程序根據條件判斷結果向后反復執行的一種運行方式,是一種程序的基本控制結構,條件循環和遍歷循環結構都是基本的循環結構,死循環能夠用于測試性能,形式上的死循環可以用break來退出,例如
x = 10 while True:x = x -1if x == 1:break
  • p = -p #表示給p賦值為它的負數,Python中的=是賦值符號
  • 縮進表達層次關系,同時用來判斷當前Python語句在分支結構
  • continue結束當次循環,但是不跳出循環
  • random庫中用于生產隨機小數的函數是random(),而randint()/getrandbits()/randrange()都產生隨機整數
  • 程序錯誤是一個大的概念,不僅指代碼運行錯誤,更代表功能邏輯錯誤。使用異常處理try-excepy,可以對程序的異常進行捕捉和處理,程序運行可能不會出錯,但邏輯上可能會出錯

編程測試:

  • 四位玫瑰數:四位玫瑰數是4位數的自冪數。自冪數是指一個 n 位數,它的每個位上的數字的 n 次冪之和等于它本身??????????????????????????????????????????????????????????????????????????????????????????????
    例如:當n為3時,有1^3 + 5^3 + 3^3 = 153,153即是n為3時的一個自冪數,3位數的自冪數被稱為水仙花數????????????????????????????????????????????????????????????????????????????????????????????
    請輸出所有4位數的四位玫瑰數,按照從小到大順序,每個數字一行
#個人思路:求四位數的各個位數abcd for i in range(1000,10000):a = i%10b = (i//10)%10c = (i//100)%10d = (i//1000)%10if a**4 + b**4 + c**4 + d**4 == i:print(i) #參考答案:字符串+eval() s = "" for i in range(1000, 10000):t = str(i)if pow(eval(t[0]),4) + pow(eval(t[1]),4) + pow(eval(t[2]),4) + pow(eval(t[3]),4) == i :print(i)
  • 100以內素數之和:求100以內所有素數之和并輸出????????????????????????????????????????????????????????????????????????????????????????????????
    素數指從大于1,且僅能被1和自己整除的整數????????????????????????????????????????????????????????????????????????????????????????????,提示:可以逐一判斷100以內每個數是否為素數,然后求和
sum = 0 for i in range(2,100):isFlag = 1 #判斷是否為素數for j in range(2,i): #遍歷2-i-1,看是否能被i整除if i%j == 0: #被整除說明不是素數isFlag = 0breakif isFlag == 1:sum += i print(sum) #參考答案:將判斷是否為素數封裝為一個函數,傾向于這種解題思路 def is_prime(n):for i in range(2,n):if n%i == 0:return Falsereturn True sum = 0 for i in range(2,100):if is_prime(i):sum += i print(sum)

測驗5:函數和代碼復用

知識點概要:

  • 函數作用:增強代碼可讀性、降低編程復雜度、復用代碼,函數不能直接提高代碼的執行速度
  • 全局變量與局部變量:函數的參數一般為局部變量,函數內使用global s 表示變量s為全局變量
  • 函數調用前必須已經存在函數定義,否則無法執行,Python內置函數直接使用,不需要引用任何模塊
  • 模塊內高耦合,模塊間低耦合:高耦合的特點是復用較為困難,模塊間關系應盡可能簡單,模塊之間耦合度低,盡可能合理劃分功能塊,功能塊內部耦合度高
  • 遞歸不會提高程序的執行效率,任何遞歸程序都可以通過堆棧或隊列變為非遞歸程序
  • 函數是一段具有特定功能的、可重用的語句組,可以看做是一段具有名字的程序,通過函數名來調用,同時不需要知道函數的內部實現原理,只需要知道調用方法(接口)即可
  • def func(*a,b):是錯誤的函數定義,*a表示可變參數,可變參數只能放在函數參數的最后,即def func(a,*b):
  • 函數可以包含0個或多個return語句
  • 每個遞歸函數至少存在一個基例,但可能存在多個基例,基例表示不再進行遞歸,同時決定了遞歸的深度

編程測試:

  • 隨機密碼生成:以整數17為隨機數種子,獲取用戶輸入整數N為長度,產生3個長度為N位的密碼,密碼的每位是一個數字。每個密碼單獨一行輸出,產生密碼采用random.randint()函數
import random def genpwd(length):a = 10**(length-1)b = 10**length - 1return "{}".format(random.randint(a, b)) length = eval(input()) random.seed(17) for i in range(3):print(genpwd(length))#思路類似,同樣過了 def genpwd(length):high = 10**lengthlow = 10**(length-1)return random.randrange(low,high)
  • 連續質數計算:獲得用戶輸入數字N,計算并輸出從N開始的5個質數,單行輸出,質數間用逗號,分割。
    注意:需要考慮用戶輸入的數字N可能是浮點數,應對輸入取整數;最后一個輸出后不用逗號
def prime(m): #判斷是否為質數for i in range(2,m):if m%i == 0:return Falsereturn Truen = eval(input()) if n != int(n): #考慮輸入為浮點數的情況n = int(n) + 1 else:n = int(n) times = 0 #統計質數的次數 res = [] #存放輸出結果 while times < 5:if prime(n):res.append(n)times += 1n += 1 for i in res[:len(res)-1]:print(i,end=",") print(res[-1]) #最后一個不輸出逗號#參考答案 def prime(m):for i in range(2,m):if m % i == 0:return Falsereturn True #需要對輸入小數情況進行判斷,獲取超過該輸入的最小整數(這里沒用floor()函數) n = eval(input()) n_ = int(n) n_ = n_+1 if n_ < n else n_ count = 5 #對輸出格式進行判斷,最后一個輸出后不增加逗號(這里沒用.join()方法) while count > 0:if prime(n_):if count > 1:print(n_, end=",")else:print(n_, end="")count -= 1 n_ += 1

測驗6:組合數據類型

知識點概要:

  • 列表ls,ls.append(x)表示只能向列表最后增加一個元素,如果x是一個列表,則該列表作為一個元素增加到ls中
  • 集合“交并差補”四種運算分別對應的運算符是:& | - ^
  • 字典d,d.values()返回的是dict_values類型,包括字典中的所有值,通常與for…in組合使用
  • Python的元組類型:元組采用逗號和圓括號(可選)來表示,一旦創建就不能修改,一個元組可以作為另一個元祖的元素,可用多級索引獲取信息,序列類型(元組、列表)中的元素都可以是不同類型
  • 創建字典時,如果相同鍵對應不同值,字典采用最后一個"鍵值對"
d= {'a': 1, 'b': 2, 'b': '3'} print(d['b']) #輸出結果:3
  • 集合與字典類型最外側都用{}表示,不同在于集合類型元素是普通元素,字典類型元素是鍵值對。字典在程序設計中非常常用,因此直接采用{}默認生成一個空字典
  • 對于字典d:x in d表示判斷x是否是字典d中的鍵,鍵是值的序號,也是字典中值的索引方式
  • Python序列類型有:列表類型、元組類型、字符串類型(Python內置數據類型中沒有數組類型)
  • 組合數據類型能夠將多個相同類型或不同類型的數據組織起來,通過單一的表示使數據操作更有序、更容易
  • 組合數據類型可以分為3類:序列類型、集合類型和映射類型;
  • Python的字符串元組列表類型都屬于序列類型,序列類型總體上可以看成一維向量,如果其元素都是序列,則可被當作二維向量
  • 對于序列s:s.index(x)返回序列s中元素x第一次出現的序號,并不返回全部序號

編程測試:

  • 數字不同數之和:獲得用戶輸入的一個整數N,輸出N中所出現不同數字的和????????????????????????????????????????????????????????????????????????????????????????????????
    例如:用戶輸入 123123123,其中所出現的不同數字為:1、2、3,這幾個數字和為6
#參考答案:字符串可以通過list()直接變成列表,或通過set()直接變成集合 n = input() ss = set(n) s = 0 for i in ss:s += eval(i)#s += int(i) #同樣可以 print(s)
  • 人名最多數統計:給出了一個字符串,其中包含了含有重復的人名,請直接輸出出現最多的人名
#先使用字典建立"姓名與出現次數"的關系,然后找出現次數最多數對應的姓名 s = '''雙兒 洪七公 趙敏 趙敏 逍遙子 鰲拜 殷天正 金輪法王 喬峰 楊過 洪七公 郭靖 楊逍 鰲拜 殷天正 段譽 楊逍 慕容復 阿紫 慕容復 郭芙 喬峰 令狐沖 郭芙 金輪法王 小龍女 楊過 慕容復 梅超風 李莫愁 洪七公 張無忌 梅超風 楊逍 鰲拜 岳不群 黃藥師 黃蓉 段譽 金輪法王 忽必烈 忽必烈 張三豐 喬峰 喬峰 阿紫 喬峰 金輪法王 袁冠南 張無忌 郭襄 黃蓉 李莫愁 趙敏 趙敏 郭芙 張三豐 喬峰 趙敏 梅超風 雙兒 鰲拜 陳家洛 袁冠南 郭芙 郭芙 楊逍 趙敏 金輪法王 忽必烈 慕容復 張三豐 趙敏 楊逍 令狐沖 黃藥師 袁冠南 楊逍 完顏洪烈 殷天正 李莫愁 阿紫 逍遙子 喬峰 逍遙子 完顏洪烈 郭芙 楊逍 張無忌 楊過 慕容復 逍遙子 虛竹 雙兒 喬峰 郭芙 黃蓉 李莫愁 陳家洛 楊過 忽必烈 鰲拜 王語嫣 洪七公 韋小寶 阿朱 梅超風 段譽 岳靈珊 完顏洪烈 喬峰 段譽 楊過 楊過 慕容復 黃蓉 楊過 阿紫 楊逍 張三豐 張三豐 趙敏 張三豐 楊逍 黃蓉 金輪法王 郭襄 張三豐 令狐沖 趙敏 郭芙 韋小寶 黃藥師 阿紫 韋小寶 金輪法王 楊逍 令狐沖 阿紫 洪七公 袁冠南 雙兒 郭靖 鰲拜 謝遜 阿紫 郭襄 梅超風 張無忌 段譽 忽必烈 完顏洪烈 雙兒 逍遙子 謝遜 完顏洪烈 殷天正 金輪法王 張三豐 雙兒 郭襄 阿朱 郭襄 雙兒 李莫愁 郭襄 忽必烈 金輪法王 張無忌 鰲拜 忽必烈 郭襄 令狐沖 謝遜 梅超風 殷天正 段譽 袁冠南 張三豐 王語嫣 阿紫 謝遜 楊過 郭靖 黃蓉 雙兒 滅絕師太 段譽 張無忌 陳家洛 黃蓉 鰲拜 黃藥師 逍遙子 忽必烈 趙敏 逍遙子 完顏洪烈 金輪法王 雙兒 鰲拜 洪七公 郭芙 郭襄 趙敏'''names = s.split() d = {} for name in names:d[name] = d.get(name, 0) + 1 Maxkey = "" MaxValue = 0 for k in d:if d[k] > MaxValue:Maxkey = kMaxValue = d[k] print(Maxkey) #參考答案 ls = s.split() d = {} for i in ls:d[i] = d.get(i, 0) + 1 max_name, max_cnt = "", 0 for k in d:if d[k] > max_cnt:max_name, max_cnt = k, d[k] print(max_name)

測驗7:文件和數據格式化

知識點概要:

  • 數據組織緯度一維數據采用線性方式組織,對應于數學中的數組和集合等概念;二維數據采用表格方式組織,對應于數學中的矩陣;高維數據由鍵值對類型的數據構成,采用對象方式組織,字典就用來表示高維數據,一般不用來表示一二緯數據
  • Python對文件操作采用的統一步驟是:打開-操作-關閉(其中關閉可以省略)
  • CSV文件格式是一種通用的、相對簡單的文件格式,應用于程序之間轉移表格數據,CSV文件的每一行是一維數據,可以使用Python中的列表類型表示,整個CSV文件是一個二維數據,一般來說,CSV文件都是文本文件,由相同的編碼字符組成
  • 二維列表切片ls = [[1,2,3],[4,5,6],[7,8,9]]獲取其中的元素5要使用:ls[1][1]
  • 文件可以包含任何內容,是數據的集合和抽象,是存儲在輔助存儲器上的數據序列,而函數或類才是程序的集合和抽象
  • 打開文件后采用close()關閉文件是一個好習慣。如果不調用close(),當前Python程序完全運行退出時,該文件引用被釋放,即程序退出時,相當于調用了close(),默認關閉
  • Python文件的"+"打開模式,與r/w/a/x一同使用,在原功能基礎上同時增加了讀寫功能,同時賦予文件的讀寫權限
  • 同一個文件既可以用文本方式打卡,也可以用二進制方式打開
  • 列表元素如果都是列表,其可能表示二維數據,如[[1,2],[3,4],[5,6]],如果列表元素不都是列表,則它表示一維數據
  • Python文件讀操作有:read()、readline()、readlines(),沒有readtext()方法

編程測試:

  • 文本的平均列數:打印輸出附件文件的平均列數,計算方法如下:????????????????????????????????????????????????????????????????????????????????????????????????
    (1)有效行指包含至少一個字符的行,不計算空行????????????????????????????????????????????????????????????????????????????????????????????????
    (2)每行的列數為其有效字符數????????????????????????????????????????????????????????????????????????????????????????????
    (3)平均列數為有效行的列數平均值,采用四舍五入方式取整數進位
#for line in f 獲取的line包含每行最后的換行符(\n),所以去掉該換行符再進行統計 f = open("latex.log", "r", encoding="utf-8") lines = 0 columns = 0 for line in f:line = line.strip("\n")if len(line):lines += 1columns += len(line) print("{:.0f}".format(columns/lines)) f.close()#參考答案如下: f = open("latex.log") s, c = 0, 0 for line in f:line = line.strip("\n")if line == "":continues += len(line)c += 1 print(round(s/c))

-CSV格式清洗與轉換:附件是一個CSV格式文件,提取數據進行如下格式轉換:????????????????????????????????????????????????????????????????????????????????????????????????
(1)按行進行倒序排列???????????????????????????????????????????????????????????????????????????????????????????????
(2)每行數據倒序排列????????????????????????????????????????????????????????????????????????????????????????????????
(3)使用分號(;)代替逗號(,)分割數據,無空格????????????????????????????????????????????????????????????????????????????????????????????????
按照上述要求轉換后將數據輸出

f = open("data.csv", "r", encoding="utf-8") txt = f.readlines() txt.reverse() #按行進行倒序排列 for line in txt:#line = line.strip("\n") #去除末尾換行符#line = line.replace(" ","") #去空格line = line.strip("\n").replace(" ", "")#ls = line.split(",") #ls = ls[::-1]ls = line.split(",")[::-1] #逗號分隔并將分隔后的元素倒序print(";".join(ls)) #元素間插入分號 f.close()#參考答案(使用strip()方法去掉每行最后的回車,使用replace()去掉每行元素兩側的空格) f = open("data.csv") ls = f.readlines() ls = ls[::-1] lt = [] for item in ls:item = item.strip("\n")item = item.replace(" ", "")lt = item.split(",")lt = lt[::-1]print(";".join(lt)) f.close()

測驗8:程序設計方法學

知識點概要:

  • 用戶體驗:編程只是手段,程序最終為人類服務,用戶體驗很重要,一個提醒進度的進度條、一個永不拋出異常的程序、一個快速的響應、一個漂亮的圖標、一個合適尺寸的界面等都是用戶體驗的組成部分。總的來說,用戶體驗是一切能夠提升程序用戶感受的組成
  • 計算思維是基于計算機的思維模式,計算機出現之前,由于沒有快速計算裝置,計算所反映的思維模式主要是數學思維,即通過公式來求解問題。當快速計算裝置出現后,計算思維才真正形成
  • 軟件產品 = 程序功能 + 用戶體驗 ;產品不僅需要功能,更需要更好的用戶體驗。往往,產品都需要綜合考慮技術功能和人文設計,這源于產品的商業特性。即,商業競爭要求產品不能只關心技術功能,更要關心用戶易用和喜好需求
  • os庫:os.system()可以啟動進程執行程序
  • 函數自頂向下設計的關鍵元素,通過定義函數及其參數逐層開展程序設計
  • os.path子庫:os.path.relpath(path)用來計算相對路徑
  • Python第三方庫安裝:使用pip命令、使用集成安裝工具或訪問UCI網站下載安裝文件,請不要直接聯系作者索要第三方庫
  • 計算思維的本質是:抽象自動化
  • os庫是Python重要的標準庫之一,提供了路徑操作、進程管理等幾百個函數功能,覆蓋與操作系統、文件操作等相關的眾多功能;os庫適合所有操作系統
  • 計算生態以競爭發展、相互依存和迅速更迭為特點,在開源項目間不存在頂層設計,以類自然界"適者生存"的方式形成技術演進路徑

編程測試:

  • 英文字符的魯棒輸入:獲得用戶的任何可能輸入,將其中的英文字符進行打印輸出,程序不出現錯誤
inputStr = input() for i in inputStr:if i.islower() or i.isupper():print(i,end="")#參考答案:采用遍歷字符的方式實現,通過約束字母表達到魯棒效果 alpha = [] for i in range(26):alpha.append(chr(ord('a') + i))alpha.append(chr(ord('A') + i)) s = input() for c in s:if c in alpha:print(c, end="")
  • 數字的魯棒輸入:獲得用戶輸入的一個數字,可能是浮點數或復數,如果是整數僅接收十進制形式,且只能是數字。對輸入數字進行平方運算,輸出結果,要求:
    1)無論用戶輸入何種內容,程序無錯誤????????????????????????????????????????????????????????????????????????????????????????????
    2)如果輸入有誤,請輸出"輸入有誤"
number = input() try:#complex()和complex(eval())之間的比較#將能夠排除非數字類型的輸入if complex(number) == complex(eval(number)):print(eval(number) ** 2) except:print("輸入有誤") ''' 不能直接使用eval(),否則用戶可以通過輸入表達式(如100**2)輸入數字 與要求不同(在實際應用中會帶來安全隱患) '''

測驗9:Python計算生態縱覽

知識點概要:

  • Python網絡爬蟲方向第三方庫有:Requests、Scrapy、pyspider
  • Python數據可視化方向第三方庫有:Mayavi、Matplotlib、Seaborn
  • Python Web信息提取方向第三方庫有:Beautiful Soup、Python-Goose、Re
  • Python游戲開發第三方庫有:Panda3D、cocos2d、PyGame
  • Python數據分析方向第三方庫有:Numpy、Pandas、Scipy
  • Python圖形用戶界面方向(GUI)第三方庫有:PyQt5、wxPython、PyGObject
  • Python網站開發框架方向第三方庫有:Django、Pyramid、Flask
  • Python文本處理方向第三方庫有:NLTK、python-docx、PyPDF2
  • Python網絡應用開發方向第三方庫有:aip、MyQR、WeRobot
  • aip是百度的人工智能功能Python訪問接口
  • Python人工智能方向第三方庫有:TensorFlow、Scikit-learn、MXNet
  • Vizard是虛擬現實第三方庫
  • pyovr是增強現實開發庫
  • redis-py是redis數據的Python訪問接口

編程測試:

  • 系統基本信息獲取:獲取系統的遞歸深度、當前執行文件路徑、系統最大UNICODE編碼值等3個信息,并打印輸出;輸出格式如下:????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
    RECLIMIT:<深度>, EXEPATH:<文件路徑>, UNICODE:<最大編碼值>???????????????????????????????????????????????????????????????????????????????????????????????
    提示:請在sys標準庫中尋找上述功能
import sys print("RECLIMIT:{}, EXEPATH:{}, UNICODE:{}".format(sys.getrecursionlimit(), sys.executable, sys.maxunicode))
  • 二維數據表格輸出:tabulate能夠對二維數據進行表格輸出,是Python優秀的第三方計算生態。????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????編寫程序,能夠輸出如下風格效果的表格數據
data = [ ["北京理工大學", "985", 2000], \["清華大學", "985", 3000], \["大連理工大學", "985", 4000], \["深圳大學", "211", 2000], \["沈陽大學", "省本", 2000], \] from tabulate import tabulate print(tabulate(data, tablefmt="grid"))

期末測驗

*編程測試:

  • 無空隙回聲輸出:獲得用戶輸入,去掉其中全部空格,將其他字符按收入順序打印輸出
print(input().replace(" ",""))
  • 文件關鍵行數:關鍵行指一個文件中包含的不重復行。關鍵行數指一個文件中包含的不重復行的數量。????????????????????????????????????????????????????????????????????????????????????????????????統計附件文件中關鍵行的數量
f = open("latex.log", "r", encoding="utf-8") d = {} for line in f:d[line] = d.get(line, 0) + 1 print("共{}關鍵行".format(len(d)))#參考答案:如果需要"去重"功能,請使用集合類型 f = open("latex.log") ls = f.readlines() s = set(ls) print("共{}關鍵行".format(len(s)))
  • 剩余兩題與測驗九重復,不重復記錄

總結

以上是生活随笔為你收集整理的嵩天老师-Python语言程序设计-Python123配套练习测验题目汇总整理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲人妻一区二区 | 少妇流白浆 | 日韩精品中文字 | 日韩一区欧美 | 久久精品这里只有精品 | 婷婷激情久久 | 岛国精品在线播放 | 污污视频在线观看网站 | 又粗又大又硬又长又爽 | 欧美三日本三级少妇三级99观看视频 | 萌白酱喷水视频 | 午夜免费大片 | 中国黄色三级视频 | 一边摸上面一边摸下面 | 国产欧美日韩亚洲 | 青青草这里只有精品 | 久久青娱乐 | 亚洲中文字幕无码av永久 | 乳罩脱了喂男人吃奶视频 | 国产对白羞辱绿帽vk | av女人的天堂 | 国产二区视频在线观看 | 三级av毛片 | 精品国产麻豆 | 国产真实乱偷精品视频 | 黄色片在线观看免费 | 日本免费黄色小视频 | 国产对白自拍 | 不卡一区二区在线视频 | 色人阁av | 黄色av网站免费看 | 欧美久久久久久久久中文字幕 | 久久久久久免费精品 | 激情欧美亚洲 | 尤物久久 | 奇米在线| 国产一二三区免费视频 | 农村寡妇一区二区三区 | 欧美四级在线观看 | 五月激情开心网 | 久操久热| av在线导航| 黄色小说网站在线观看 | 国产成人午夜精品无码区久久 | 精品无码一区二区三区电影桃花 | 久久久久亚洲av成人片 | 黄色三级网站 | 蜜桃视频在线观看一区 | 天天操夜夜摸 | 免费激情av | 日操操| 天天免费视频 | 一级特黄aaa大片 | 成人在线不卡 | 日本中文字幕二区 | 精品人妻人人做人人爽 | 国产哺乳奶水91在线播放 | 国产精品无码av在线有声小说 | 国产精品亚洲精品 | 一区二区成人网 | 女儿朋友| free性欧美hd精品4k | 加勒比日韩 | 国产亚洲精品一区二区三区 | 美女又爽又黄又免费 | 小萝莉末成年一区二区 | 亚洲色图 在线视频 | 国内一级视频 | 白丝校花扒腿让我c | 久久激情av| 高清二区 | 欧美成人h版在线观看 | 中文字幕国产一区 | 精品在线免费观看视频 | 精品一区二区三区免费 | 免费黄色看片 | 久操超碰 | 三级黄色网 | 精品视频入口 | 亚洲自拍偷拍综合 | 69日本xxxxxxxx96| 性生交大片免费看视频 | 日本理伦片午夜理伦片 | 中文字幕在线观看一区 | 成人午夜视频免费看 | 撸撸在线视频 | 午夜色大片 | 国产精品成人aaaa在线 | av中文字幕在线播放 | 99这里只有精品 | 一本色道久久综合狠狠躁 | 亚洲国产精品美女 | 男人与雌性宠物交啪啪 | 13日本xxxxxⅹxxx20 | 丝袜在线视频 | 亚洲免费av网站 | 一色道久久88加勒比一 | 老熟妇毛片 | 天美麻花果冻视频大全英文版 |