国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Python初學(xué)者必會的11道測試題,含代碼?。?/h1>

這篇具有很好參考價(jià)值的文章主要介紹了Python初學(xué)者必會的11道測試題,含代碼!!。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前言

一個(gè)學(xué)妹問我的11道python題,我就順手拿來做了下,發(fā)現(xiàn)有些題目還是很有意思的。

1

隨機(jī)生成一個(gè)在[5,10]區(qū)間內(nèi)的整數(shù)n,分別輸出如下圖所示的n行有規(guī)律字符圖。
【提示】
(I)隨機(jī)數(shù)生成需要導(dǎo)入random庫后調(diào)用randint(a,b)函數(shù);
(2)利用序列range()函數(shù),獲得字母編碼值,調(diào)用chr()函數(shù)將字母編碼值轉(zhuǎn)換成字母。
python簡單代碼測試,python,開發(fā)語言,算法

import random

n = random.randint(5, 10)  # 隨機(jī)生成5到10之間的整數(shù)n
for i in range(1, n+1):
    num_of_chars = 2 * i - 1  # 第i行有2i-1個(gè)字符
    if i % 2 == 0:  # 判斷當(dāng)前行數(shù)i是否為偶數(shù)
        char = chr(97+i-1)  # 偶數(shù)行字符為小寫字母i的大寫字母
    else:
        char = chr(97+i-1)  # 奇數(shù)行字符為小寫字母i本身
    line = char * num_of_chars  # 構(gòu)造第i行的字符
    print(line.center(n*2-1))  # 將第i行字符居中排列,并輸出

運(yùn)行結(jié)果
python簡單代碼測試,python,開發(fā)語言,算法

2

隨機(jī)生成一個(gè)在[5,10]區(qū)間內(nèi)的整數(shù)n,分別輸出如下圖所示的n行有規(guī)律字符圖。
【提示】
(1)隨機(jī)數(shù)生成需要導(dǎo)入random庫后調(diào)用randint(a,b)函數(shù);
(2)利用序列range()函數(shù),獲得字母編碼值,調(diào)用chr(0函數(shù)將字母編碼值轉(zhuǎn)換成字母。
(3)若n是奇數(shù),輸出如左圖所示的圖形;若n是偶數(shù),輸出如右圖所示的圖形。
python簡單代碼測試,python,開發(fā)語言,算法

import random

# 生成[5,10]范圍內(nèi)的隨機(jī)整數(shù)n
n = random.randint(5, 10)

# 根據(jù)n的奇偶性,選擇輸出A、B字母的范圍
if n % 2 == 0:
    letter_range = range(65, 74)  # A~I字母的編碼值
else:
    letter_range = range(65, 73)  # A~H字母的編碼值

# 輸出圖形
for i in range(n):
    letter = chr(letter_range[i % len(letter_range)])  # 獲取當(dāng)前行應(yīng)輸出的字母
    spaces = n - i - 1  # 計(jì)算當(dāng)前行前面應(yīng)輸出的空格數(shù)
    print(' ' * spaces + letter * (2 * i + 1))  # 輸出當(dāng)前行
for i in range(n - 2, -1, -1):
    letter = chr(letter_range[i % len(letter_range)])  # 獲取當(dāng)前行應(yīng)輸出的字母
    spaces = n - i - 1  # 計(jì)算當(dāng)前行前面應(yīng)輸出的空格數(shù)
    print(' ' * spaces + letter * (2 * i + 1))  # 輸出當(dāng)前行

運(yùn)行結(jié)果
python簡單代碼測試,python,開發(fā)語言,算法

3

輸入一個(gè)算術(shù)表達(dá)式,檢查其中的圓括號配對情況,輸出的信息如下圖所示。
輸入表達(dá)式:(3+4)*5-(6=
左括號多于右括號
提示:利用for語句遍歷整個(gè)表達(dá)式,分別統(tǒng)計(jì)左、右括號的數(shù)量。
python簡單代碼測試,python,開發(fā)語言,算法

def check_parentheses(expression):
  # 創(chuàng)建一個(gè)空棧
  stack = []
  # 遍歷表達(dá)式中的每個(gè)字符
  for char in expression:
    # 如果是左括號,就壓入棧中
    if char == "(":
      stack.append(char)
    # 如果是右括號,就和棧頂?shù)淖罄ㄌ柶ヅ洳棾?/span>
    elif char == ")":
      # 如果棧為空,說明右括號多于左括號
      if not stack:
        return "右括號多于左括號"
      else:
        stack.pop()
  # 如果最后棧不為空,說明左括號多于右括號
  if stack:
    return "左括號多于右括號"
  else:
    return "圓括號是平衡的"

# 輸入一個(gè)算術(shù)表達(dá)式
expression = input("輸入表達(dá)式:")
# 調(diào)用函數(shù)檢查圓括號配對情況,并輸出結(jié)果
result = check_parentheses(expression)
print("輸出結(jié)果:", result)

運(yùn)行結(jié)果
python簡單代碼測試,python,開發(fā)語言,算法

4 和 5

輸入一個(gè)英文句子,各單詞間空格分隔,輸出最長的單詞及其長度。
提示:利用字符串的split方法,將單詞分離到列表中;然后遍歷列表時(shí)用len0函數(shù)求出最長的單
詞。
輸入任意位的正整數(shù),利用while語句將輸入的數(shù)按逆序顯示。例如,輸入15356輸出65351。
提示:將一個(gè)十進(jìn)制數(shù)x不斷地除以十取余數(shù),并將余數(shù)連接,直到x為0。
python簡單代碼測試,python,開發(fā)語言,算法
4

def find_longest_word(sentence):
  # 將句子分割成單詞列表
  words = sentence.split()
  # 使用max函數(shù),以len為關(guān)鍵字參數(shù),找出最長的單詞
  longest = max(words, key=len)
  # 返回最長的單詞及其長度
  return longest, len(longest)

# 輸入一個(gè)英文句子
sentence = input("輸入一個(gè)英文句子:")
# 調(diào)用函數(shù)找出最長的單詞及其長度,并輸出結(jié)果
word, length = find_longest_word(sentence)
print("輸出結(jié)果:")
print("最長的單詞是:", word)
print("它的長度是:", length)

運(yùn)行結(jié)果,這個(gè)有一個(gè)小問題就是句子中如果有標(biāo)點(diǎn)符號 也會算進(jìn)單詞里

python簡單代碼測試,python,開發(fā)語言,算法
5

num = int(input("請輸入一個(gè)正整數(shù):"))
reverse = 0  # 存儲翻轉(zhuǎn)后的數(shù)
while num > 0:
    reverse = reverse * 10 + num % 10  # 將余數(shù)連接到reverse末尾
    num //= 10  # 整除10,將num的最后一位刪除
print("逆序顯示的數(shù)為:", reverse)

運(yùn)行結(jié)果
python簡單代碼測試,python,開發(fā)語言,算法

6 和 7

計(jì)算下列級數(shù)的值,直到第項(xiàng)的值小于10的負(fù)4次方時(shí)結(jié)束。
計(jì)算P的近似值,計(jì)算公式為:
求n=1000時(shí)的值,并與數(shù)學(xué)庫提供的常數(shù)pi進(jìn)行驗(yàn)證。
python簡單代碼測試,python,開發(fā)語言,算法
6

# 定義遞推函數(shù)
def t(n):
    # 如果n為0,返回1
    if n == 0:
        return 1
    # 否則返回前一項(xiàng)加上n
    else:
        return t(n-1) + n

# 定義級數(shù)函數(shù)
def s():
    # 初始化一個(gè)空列表
    values = []
    # 初始化i為0
    i = 0
    # 循環(huán)計(jì)算每一項(xiàng)的值,直到小于10的負(fù)4次方為止
    while True:
        # 計(jì)算第i項(xiàng)的值,并取倒數(shù)
        value = 1 / t(i)
        # 如果值小于10的負(fù)4次方,跳出循環(huán)
        if value < 10 ** -4:
            break
        # 否則將值添加到列表中,并增加i的值
        else:
            values.append(value)
            i += 1
    # 返回滿足條件的項(xiàng)數(shù)和級數(shù)和(用sum函數(shù)求和)
    return len(values), sum(values)

# 調(diào)用級數(shù)函數(shù)并打印結(jié)果
print(s())

運(yùn)行結(jié)果
python簡單代碼測試,python,開發(fā)語言,算法
我不確定對不對,結(jié)果是個(gè)141位小數(shù)
7

# 導(dǎo)入math模塊
import math
# 定義計(jì)算PI的函數(shù)
def pi(n):
    # 初始化結(jié)果為2
    result = 2
    # 循環(huán)n次,計(jì)算每一項(xiàng)并累乘
    for i in range(1, n + 1):
        # 計(jì)算分子和分母
        numerator = (2 * i) ** 2
        denominator = (2 * i - 1) * (2 * i + 1)
        # 計(jì)算每一項(xiàng)并累乘到結(jié)果中
        result *= numerator / denominator
    # 返回結(jié)果
    return result

# 調(diào)用函數(shù),計(jì)算n=1000時(shí)的值,并打印出來
print(pi(1000))
# 打印math模塊提供的常數(shù)pi,并比較兩者是否相等(用round函數(shù)四舍五入到小數(shù)點(diǎn)后6位)
print(math.pi)
print(round(pi(1000), 6) == round(math.pi, 6))

運(yùn)行結(jié)果
python簡單代碼測試,python,開發(fā)語言,算法

8

編一程序,找出所有的水仙花數(shù)。所謂水仙花數(shù),是指一個(gè)3位數(shù),其名位數(shù)字的立方和等于該數(shù)
字本身。例如,153是水仙花數(shù),因?yàn)?53=13+53+33。
提示:解該題的方法有兩種:
(1)利用三重循環(huán),將三個(gè)一位數(shù)連接成一個(gè)3位數(shù)進(jìn)行判斷。
(2)利用單循環(huán)將一個(gè)3位數(shù)逐位分離后進(jìn)行判斷。
python簡單代碼測試,python,開發(fā)語言,算法

for num in range(100, 1000):
    i = num // 100
    j = (num // 10) % 10
    k = num % 10
    if num == i**3 + j**3 + k**3:
        print(num)

運(yùn)行結(jié)果
python簡單代碼測試,python,開發(fā)語言,算法

9

求S_n=a+aa+aaa+aaa+.aa.aaa(n個(gè)a),其中a為1到9,n為5到10,通過鍵盤輸入。
例如:當(dāng)輸入a=2,n=7時(shí),
顯示:S_n=2+22+222+2222+22222+222222+2222222
提示:
(1)為了得到不斷重復(fù)a的n位的數(shù)Temp,可用如下程序段實(shí)現(xiàn):
temp=0
for i in range(1,n+1):
temp=temp*10+a
(2)不僅要顯示計(jì)算結(jié)果,還要輸出表達(dá)式,即輸出如下形式的式子:
s=2+22+222+2222+22222+222222+2222222=2469134
python簡單代碼測試,python,開發(fā)語言,算法

# 定義求S_n的函數(shù)
def s_n(a, n):
    # 初始化結(jié)果為0
    result = 0
    # 初始化每一項(xiàng)為0
    temp = 0
    # 初始化表達(dá)式為空字符串
    expression = ""
    # 循環(huán)n次,計(jì)算每一項(xiàng)并累加到結(jié)果中
    for i in range(1, n + 1):
        # 計(jì)算每一項(xiàng),即不斷重復(fù)a的n位數(shù)
        temp = temp * 10 + a
        # 累加到結(jié)果中
        result += temp
        # 將每一項(xiàng)轉(zhuǎn)換為字符串,并添加到表達(dá)式中,用"+"號分隔
        expression += str(temp) + "+"
    # 去掉表達(dá)式最后多余的"+"號,并添加"="號和結(jié)果值
    expression = expression[:-1] + "=" + str(result)
    # 返回表達(dá)式和結(jié)果值(元組形式)
    return (expression, result)

# 獲取鍵盤輸入的a和n的值,并轉(zhuǎn)換為整數(shù)類型(注意異常處理)
try:
    a = int(input("請輸入a(1~9):"))
    n = int(input("請輸入n(5~10):"))
except ValueError:
    print("輸入錯(cuò)誤,請輸入整數(shù)")
else:
    # 檢查a和n是否在合理的范圍內(nèi)(注意條件判斷)
    if 1 <= a <= 9 and 5 <= n <= 10:
        # 調(diào)用函數(shù),求S_n的值,并打印出來(注意解包元組)
        result = 's=' + s_n(a, n)[0]
        print(result)

運(yùn)行結(jié)果
python簡單代碼測試,python,開發(fā)語言,算法

10

利用枚舉法安排期末考試。期末考試在周一到周六的6天時(shí)間內(nèi)要考×、y、Z三門課程,考試課程順
序先考x,后考y,最后考z,規(guī)定一天只能考一門,且z課程最早安排在周五考。編寫程序列出滿足
條件的所有考試安排方案。
提示:利用枚舉法通過三重循環(huán)來解決。
python簡單代碼測試,python,開發(fā)語言,算法

for i in range(1, 7):   # 枚舉周一到周六
    for j in range(1, 7):
        for k in range(1, 7):
            if i != j and i != k and j != k:  # 保證三門課程不在同一天考
                if k == 5:  # Z課程最早安排在周五考
                    print("X課程在周{}考,Y課程在周{}考,Z課程在周{}考".format(i, j, k))

運(yùn)行結(jié)果
python簡單代碼測試,python,開發(fā)語言,算法

11

猜數(shù)游戲。計(jì)算加隨機(jī)產(chǎn)生一個(gè)1~100之間的整數(shù),由用戶去猜,猜中即勝;猜不中,顯示提示信
息,繼續(xù)猜,直至猜中,顯示相關(guān)信息和次數(shù),如下圖所示。
輸入猜測的數(shù):50
50小
輸入猜測的數(shù):75
75大了
輸入猜測的數(shù):62
62小了
輸入猜測的數(shù):68
68小了
輸入猜測的數(shù):71
71大了
輸入猜測的數(shù):69
69小了
輸入猜測的數(shù):70
70恭喜你猜對了!你猜了7次
python簡單代碼測試,python,開發(fā)語言,算法

import random

num = random.randint(1, 100)   # 隨機(jī)生成一個(gè)1~100之間的整數(shù)
count = 0   # 記錄猜測次數(shù)

while True:
    guess = int(input("輸入猜測的數(shù):"))
    count += 1
    
    if guess < num:
        print("{}小了".format(guess))
    elif guess > num:
        print("{}大了".format(guess))
    else:
        print("{}恭喜你猜對了!你猜了{(lán)}次".format(guess, count))
        break

運(yùn)行結(jié)果
python簡單代碼測試,python,開發(fā)語言,算法文章來源地址http://www.zghlxwxcb.cn/news/detail-722779.html

到了這里,關(guān)于Python初學(xué)者必會的11道測試題,含代碼?。〉奈恼戮徒榻B完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Python爬蟲入門(一)(適合初學(xué)者)

    Python爬蟲入門(一)(適合初學(xué)者)

    關(guān)于爬蟲是什么,怎樣保證爬蟲的合法性小編在這就不再過多的闡述,從本章起,小編將和大家一起分享在學(xué)習(xí)python爬蟲中的所學(xué),希望可以和大家一起進(jìn)步,也希望各位可以關(guān)注一下我! 首先我們來初步了解下如何使用開發(fā)者工具進(jìn)行抓包。以 https://fanyi.baidu.com/ 為例。在

    2024年01月24日
    瀏覽(37)
  • Python初學(xué)者須知(10)初識條件判斷

    Python初學(xué)者須知(10)初識條件判斷

    ?????????本系列博客主要針對的是Python初學(xué)者。Python語言簡潔、強(qiáng)大的特性吸引了越來越多的技術(shù)人員將他們的項(xiàng)目轉(zhuǎn)移到Python上。目前,Python已經(jīng)成為計(jì)算機(jī)行業(yè)最流行的編程語言之一。筆者考慮到Python初學(xué)者的多元化(Python學(xué)習(xí)者可能是對編程感興趣的中學(xué)生、學(xué)校

    2024年01月21日
    瀏覽(27)
  • Python 初學(xué)者容易踩的 5 個(gè)坑

    哈嘍大家好,我是咸魚。 今天咸魚列出了一些大家在初學(xué) Python 的時(shí)候容易踩的一些坑,看看你有沒有中招過。 原文:https://www.bitecode.dev/p/unexpected-python-traps-for-beginners Python 在詞法分析的時(shí)候會把多個(gè)字符串自動(dòng)拼接起來。 這個(gè)特性可以讓我們在聲明一個(gè)長字符串的時(shí)候可

    2024年03月11日
    瀏覽(22)
  • 手把手教python打包exe,打包一個(gè)簡易的小程序。tkinter,python初學(xué)者。編程初學(xué)者作業(yè):用*填充出自己的名字

    手把手教python打包exe,打包一個(gè)簡易的小程序。tkinter,python初學(xué)者。編程初學(xué)者作業(yè):用*填充出自己的名字

    【聲明】這篇文章可能寫的很差,作者技術(shù)不夠。但是一定原創(chuàng),一定用最簡單的語言,最詳細(xì)的描述讓沒有經(jīng)驗(yàn)的讀者能夠懂得 【首言】exe是電腦上直接點(diǎn)擊就可以使用的。當(dāng)你寫了一個(gè).py文件,可以實(shí)現(xiàn)你的有趣功能,于是你高興的把這個(gè)發(fā)送給你的朋友,但是你的朋友

    2024年02月01日
    瀏覽(28)
  • Python初學(xué)者友好丨詳解參數(shù)傳遞類型

    摘要: ?本文清晰地解釋了Python中的不同參數(shù)傳遞類型,并提供了示例代碼來說明每種類型的用法。對于初學(xué)者或不清楚Python傳參的讀者們來說是非常有益的,文中提供了足夠的信息來理解和使用Python中的函數(shù)參數(shù)傳遞。 本文分享自華為云社區(qū)《提升Python函數(shù)調(diào)用靈活性:參

    2024年02月09日
    瀏覽(23)
  • python初學(xué)者筆記-continue介紹及使用

    python初學(xué)者筆記-continue介紹及使用

    1.continue: ? ? 如果在循環(huán)中達(dá)到到某些條件則跳過當(dāng)次循環(huán)而不是終止整個(gè)循環(huán)的時(shí)候可以利用 continue 來實(shí)現(xiàn)。 ① continue 會跳過當(dāng)次循環(huán),即結(jié)束本次循環(huán),進(jìn)入下一個(gè)循環(huán)。 執(zhí)行原理: ? continue 會跳過當(dāng)次循環(huán),即結(jié)束本次循環(huán),進(jìn)入下一個(gè)循環(huán)。 2.continue與break: 注

    2024年02月08日
    瀏覽(25)
  • 【新手解答】Python中Pandas的初學(xué)者筆記

    【新手解答】Python中Pandas的初學(xué)者筆記

    ??你好呀!我是 是Yu欸 ?? 2024每日百字篆刻時(shí)光,感謝你的陪伴與支持 ~ ?? 歡迎一起踏上探險(xiǎn)之旅,挖掘無限可能,共同成長! 前些天發(fā)現(xiàn)了一個(gè)人工智能學(xué)習(xí)網(wǎng)站,內(nèi)容深入淺出、易于理解。如果對人工智能感興趣,不妨點(diǎn)擊查看。 一位CSDN好友詢問是否有 python里的p

    2024年03月14日
    瀏覽(28)
  • 學(xué)完python的心得體會,初學(xué)者對python的感想

    學(xué)完python的心得體會,初學(xué)者對python的感想

    大家好,給大家分享一下學(xué)了一年的python的收獲和感想,很多人還不知道這一點(diǎn)。下面詳細(xì)解釋一下?,F(xiàn)在讓我們來看看! Python今年是排名前3的最受歡迎和增長最快的編程語言之一。 它是一種多用途,高級別,面向?qū)ο螅换ナ?,解釋型和對用戶非常友好的編程語言。 那么

    2024年02月08日
    瀏覽(30)
  • Python GUI初學(xué)者教程,輕松構(gòu)建用戶界面

    Python GUI初學(xué)者教程,輕松構(gòu)建用戶界面

    Python GUI入門教程:輕松構(gòu)建用戶界面。 微信搜索關(guān)注《Python學(xué)研大本營》,加入讀者群,分享更多精彩 Python以其簡單性和多功能性成為最受歡迎的編程語言之一。從網(wǎng)絡(luò)開發(fā)到數(shù)據(jù)科學(xué),Python被廣泛應(yīng)用于各個(gè)領(lǐng)域。 本文將探索Python內(nèi)置的用于創(chuàng)建圖形用戶界面(GUI)的庫

    2024年01月15日
    瀏覽(26)
  • 詳解 matplotlib.pyplot ,Python 初學(xué)者真能看懂

    詳解 matplotlib.pyplot ,Python 初學(xué)者真能看懂

    Matplotlib 是一個(gè) Python 中的 2D 繪圖庫, pyplot 模塊是一個(gè)方便使用 Matplotlib 的接口。 下面是 pyplot 模塊中的五個(gè)重要的知識點(diǎn): 【創(chuàng)建圖形】: pyplot 模塊提供了許多簡單易用的函數(shù)來創(chuàng)建圖形,如 plot、scatter、bar、hist 等。這些函數(shù)可以繪制不同類型的圖形,例如散點(diǎn)圖、折

    2024年02月02日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包