首页
/
每日頭條
/
生活
/
python中的序列表示法
python中的序列表示法
更新时间:2026-02-17 17:54:21

【人生苦短,我學Python】是衆多和計算機接觸過的朋友耳熟能詳的段子,Python作為最近幾年非常火的編程語言,因為其簡潔和開源的特點,受到許許多多人的喜愛。著名房地産商潘石屹先生也在學習Python,足以可見Python的實用性和其強大的“魅力”。

python中的序列表示法(溫文默克的學習筆記Python篇)1

筆者自身對于Python也是十分喜愛,希望能有越來越多的朋友接觸這門語言。關于Python的學習,除了看一些課程視頻和專業書籍外,筆者認為最重要的就是練習,無論是大的項目還是小的例子,隻有在練習中不斷進行嘗試才能找到自己的“盲區”。

接下來,筆者開始今天的學習筆記分享——Collatz 序列

python中的序列表示法(溫文默克的學習筆記Python篇)2

Collatz 序列(奇偶歸一猜想)又稱為3n+1猜想、冰雹猜想,是指對于每一個正整數,如果它是奇數,則對它乘3再加1,如果它是偶數,則對它除以2,反複進行上述循環,最終結果都能夠得到1。為了實現上述功能,首先要定義一個函數(筆者将其命名為collatz()),它有一個名為 number 的參數。如果參數是偶數,那麼 collatz()就打印出 number // 2,并返回該值。如果 number 是奇數,collatz()就打印并返回 3 * number 1。

def collatz(num): if num % 2==0: return num // 2 else: return 3 * num 1

然後編寫一個程序,讓用戶輸入一個整數,并不斷對這個數調用 collatz(),直到函數返回值1。而要實現這一功能要注意兩點,一是要記得用 int()函數将輸入的值轉成一個整數,否則它會是一個字符串,調用collatz()會失敗。二是要不斷調用collatz(),這時就需要用到“遞歸”了。

python中的序列表示法(溫文默克的學習筆記Python篇)3

那什麼是“遞歸”呢?簡單來說就是不斷地調用自己,舉個筆者小時候聽過的例子:從前有座山,山裡有座廟,廟裡有個老和尚,老和尚在給小和尚講故事,說從前有座山,山裡有座廟,廟裡有個老和尚,老和尚在給小和尚講故事,從前有座山... 還有從兩面相對的鏡子中看到的畫面,其實都是抽象出來的遞歸現象。

python中的序列表示法(溫文默克的學習筆記Python篇)4

不過這嚴格上來說并不能算是遞歸,因為會一直重複下去,沒有終止條件,那就稱為死循環了。遞歸需要終止條件的。利用遞歸的思想,可以實現很多功能,比如九九乘法表,斐波拉契數列……

回到本來的Collatz 序列這個例子,筆者定義了一個名為func()的函數,參數值為輸入的正整數。在這個函數裡調用collatz(),如果得出的值不是1,證明還沒到最後,将其打印出來,再使用遞歸的思想,調用自己,參數值為目前使用collatz()得出的值,反複進行,直到最後得出的值為1。

def func(i): if collatz(i) != 1: print(collatz(i)) i = collatz(i) func(i) else: print(collatz(i))

到了這一步基本的功能已經實現了,不過我們還可以在輸入操作上進行一些完善,在用戶輸入數值類型錯誤時,給予提示。這裡使用try…except語句來解決輸入錯誤問題。

while True: print("Enter number:") try: i = int(input()) func(i) break except ValueError: print("請輸入整數!!!")

本次的分享就到這裡,今天剛好是1月1日,祝大家新的一年能夠萬事順利~

pip uninstall 2019

pip install 2020

import money

from money import beauty

from money import *

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
vbs為什麼不能運行
vbs為什麼不能運行
在微軟為Windows1121H2引入的各項安全特性中,“基于虛拟化的安全性”(VBS)旨在通過将計算機進程和操作系統/設備隔離開來(又稱“核心隔離”),而提供針對惡意軟件和其它攻擊的額外防護。尴尬的是,這項功能也導緻了英特爾XTU、微星A...
2026-02-17
德州釣組适合釣什麼魚
德州釣組适合釣什麼魚
德州釣組适合釣什麼魚?鲈魚:德州釣組首推的就是作釣鲈魚,特别是作釣一些有障礙物且水底比較複雜的水域,而鲈魚恰恰喜歡在這些地方活動,因此用來作釣鲈魚效果比較突出,今天小編就來說說關于德州釣組适合釣什麼魚?下面更多詳細答案一起來看看吧!德州釣組...
2026-02-17
合同效力與物權變動的區分原則
合同效力與物權變動的區分原則
合同效力與物權變動的區分原則?一、《物權法》和《合同法》分别有不同的調整對象和範圍,下面我們就來聊聊關于合同效力與物權變動的區分原則?接下來我們就一起去了解一下吧!合同效力與物權變動的區分原則來源:法律之樹特别提示:凡本号注明“來源”或“轉...
2026-02-17
黑椒香菇焖鴨胗
黑椒香菇焖鴨胗
黑椒香菇焖鴨胗?【原料】水發香菇(125克)、豬肉(325克)、雞肫(8隻)、雞翅膀(4隻)、京蔥末(13.5克)、姜米(13.5克)、黃酒(50克)、白糖(6.5克)、醬油(20克)、鹽(6.5克)、味精(少許)、雞油(6.5克)、濃湯(...
2026-02-17
金錢兜的養殖方法和注意事項
金錢兜的養殖方法和注意事項
金錢兜的養殖方法和注意事項?土壤選擇因為金錢兜原産地的原因,形成了較強的耐旱性,因此對土壤的要求不是很嚴格,保證疏松、透氣性強就好粘性較大的土壤不要使用,今天小編就來說說關于金錢兜的養殖方法和注意事項?下面更多詳細答案一起來看看吧!金錢兜的...
2026-02-17
Copyright 2023-2026 - www.tftnews.com All Rights Reserved