之前聽過一個Python課,也聽過不少基礎課,知道些語法,但是為什麼我就沒有辦法用Python獨立完成一個簡單的任務呢?

比如說我有的時候處理一個excel表格,感覺費半天到處查資料寫Python程序,還不如我一個個複製粘貼完成得快……


看了同學的描述,主要問題應該是出現在你以為你會了,實際上還是沒會。

在Python開發乃至所有語言開發中,最忌諱的學習方式就是看,最好的方式還是通過實踐來檢驗學習成果,當你代碼量上去的時候小千就不相信你還是寫不出程序來。

Python學習一定要先打好基礎,之後通過學習高級的框架來提升技能,結合一些實戰項目更好的去理解這些框架的用法。

這裡給同學推薦幾個Python的項目實踐教程,同學可以跟著學習一下。

【千鋒教育】2020版Python視頻 Excel數據分析必備知識(入門到精通)_嗶哩嗶哩 (゜-゜)つロ 乾杯~-bilibili?

www.bilibili.com圖標【千鋒教育】2020全新 Python爬蟲技術快速上手(都是乾貨)_嗶哩嗶哩 (゜-゜)つロ 乾杯~-bilibili?

www.bilibili.com圖標Python項目精講②-美國總統競選贊助數據分析【千鋒】_嗶哩嗶哩 (゜-゜)つロ 乾杯~-bilibili?

www.bilibili.com圖標千鋒Python入門公開課教程合集,持續更新中~_嗶哩嗶哩 (゜-゜)つロ 乾杯~-bilibili?

www.bilibili.com圖標發佈於 01-12繼續瀏覽內容知乎發現更大的世界打開Chrome繼續宵夜宵夜

其實恰恰有很多人不知道如何運用學到的知識,甚至不知道如何去學習。現在Python的學習視頻有很多,但是都不夠系統,很多人都是這看一個那看一個,學習順序完全是混亂的,而且前後根本銜接不上。想要把學到的東西充分利用好,首先你得明確學習路徑。我們將Python技術路徑劃分出七個模塊:入門知識 - Python基礎 - Web框架 - 基礎項目 - 網路編程 - 數據與計算 - 綜合項目。這樣就保證了學習方向的正確性和知識的完整性。

學習Python的思路就是先是穩紮穩打基礎知識,然後模仿(任何高手都是從模仿開始的),最後是自己實踐。

打牢基礎知識,除了看書以外,還要熟悉在操作系統中熟悉這些用法,學什麼都要自己先動手!所以我們提供了Linux的在線環境,任何課程都可以在Linux環境中進行,甚至基礎的入門知識都可以學習。

基礎入門:

Web框架:

學完基礎知識之後就是很重要的一步——模仿。這也是學以致用的關鍵。

入手一些基本的項目實戰,既可以檢驗自己已學內容的掌握程度,又可以初步了解整個過程,還可以找到一些靈感。一舉三得。

如果大家在學習中遇到困難,想找一個python學習交流環境,可以點擊下方加入我們一起學習,歡迎零基礎和大佬加入,可分享資源

正在跳轉?

jq.qq.com

有關Python問題都可以給我留言喔


其實恰恰有很多人不知道如何運用學到的知識,甚至不知道如何去學習。現在Python的學習視頻有很多,但是都不夠系統,很多人都是這看一個那看一個,學習順序完全是混亂的,而且前後根本銜接不上。想要把學到的東西充分利用好,首先你得明確學習路徑。我們將Python技術路徑劃分出七個模塊:入門知識 - Python基礎 - Web框架 - 基礎項目 - 網路編程 - 數據與計算 - 綜合項目。這樣就保證了學習方向的正確性和知識的完整性。

學習Python的思路就是先是穩紮穩打基礎知識,然後模仿(任何高手都是從模仿開始的),最後是自己實踐。

打牢基礎知識,除了看書以外,還要熟悉在操作系統中熟悉這些用法,學什麼都要自己先動手!所以我們提供了Linux的在線環境,任何課程都可以在Linux環境中進行,甚至基礎的入門知識都可以學習。

基礎入門:

Web框架:

學完基礎知識之後就是很重要的一步——模仿。這也是學以致用的關鍵。

入手一些基本的項目實戰,既可以檢驗自己已學內容的掌握程度,又可以初步了解整個過程,還可以找到一些靈感。一舉三得。

如果大家在學習中遇到困難,想找一個python學習交流環境,可以點擊下方加入我們一起學習,歡迎零基礎和大佬加入,可分享資源

正在跳轉?

jq.qq.com

有關Python問題都可以給我留言喔


謝邀,

這問題我沒法答,

總結:多練、多寫、多試錯。


主要是缺乏編程實踐練習。在學習編程的過程中,只看不動手是學不會的,可以嘗試自己編寫一些簡單的小程序,提高自己的編碼能力。

下面的這個小案例,不看後面的代碼,你能編寫出來嗎?

編程思路

創建一個空的列表,然後使用一個for循環,循環範圍為1至自然數n,在每輪循環中,用循環的計數變數去除自然數n,如果自然數n能被計數變數整除,說明這個計數變數是自然數n的因數,把因數添加到列表。循環完成後,列表中的元素就是自然數n的所有因數。

找因數的演算法用函數來實現,函數名稱為factor,factor函數有一個參數,該參數為自然數n。當其它代碼調用factor函數時,需要傳入自然數n,函數執行完成後會返回一個列表,該列表的元素為自然數n的所有因數。

factor函數流程圖

factor函數的代碼

# 定義函數factor
def factor(n):
# 創建一個空的list
num_list = []
for i in range(1,n+1):
# 若n被i整除,i是n的因數
if n % i == 0:
# i添加到list
num_list.append(i)
return num_list

代碼解讀

factor函數的功能是找出自然數n的所有因數,自然數n在代碼調用函數時傳入。函數執行完成會返回一個列表,該列表的元素就是自然數n的因數。

在factor函數內部,會先創建一個空的num_list列表,用於存儲自然數n的所有因數。然後使用range函數創建一個整數序列,該序列的範圍為自然數1~n,for循環在該整數序列內循環,在每一輪循環中,判斷自然數n能否被for循環的計數變數i整除,如果自然數n能被i整除,說明i是自然數n的因數,將計數變數i添加到num_list列表。

確定了找自然數n所有因數的函數,阿萌開始梳理編程任務的整體需求。

程序啟動後,程序在Shell窗口輸出提示信息「請輸入一個自然數,輸入quit可退出程序:」,學生輸入一個自然數,程序找出該自然數的所有因數,並將所有因數輸出到Shell窗口。程序再次輸出「請輸入一個自然數:」,等待學生的下次輸入。

程序需要判斷學生輸入的是否是自然數,如果不是自然數,再判斷是否是quit,若是quit退出程序,否則程序輸出錯誤提示「輸入錯誤,請輸入一個自然數或者輸入quit退出程序」。

程序流程圖

在流程圖中,使用了while循環,讓程序一直處於運行狀態,等待學生的輸入。當學生輸入quit時,調用break語句退出while循環,程序結束。

循環體內首先提示學生輸入一個自然數,輸入quit可退出程序。學生輸入自然數後,程序需要驗證學生輸入的是否是自然數,若是自然數,調用factor函數找出該自然數的所有因數,並輸出這些因數到Shell窗口。若不是自然數,程序需要再判斷學生輸入的是否是quit,若是quit就調用break語句退出循環,否則輸出錯誤提示信息。

程序的輸入與輸出

序的輸入是自然數n,可以使用input函數獲取學生的輸入,學生在輸入的過程中,可能輸入的不是自然數,因此程序需要有驗證輸入的機制,防止程序出現錯誤。

程序的輸出是自然數n的所有因數,自然數n的因數存儲到一個列表中,使用print函數可以直接輸出列表的元素。

通過表格方式列出程序的輸入和輸出,是一種很好的程序設計方式。從表格中可以清晰看出程序需要哪些輸入和哪些輸出,以及輸入輸出的類型和方式。

程序完整代碼

# 定義函數factor
def factor(n):
# 創建一個空的list
num_list = []
for i in range(1,n+1):
# 若n被i整除,i是n的因數
if n % i == 0:
# i添加到list
num_list.append(i)
return num_list

# 程序入口
if __name__ == __main__:

while(True):
# 輸入提示信息
num = input("請輸入一個自然數,輸入quit可退出程序:")
# 判斷num是否全部是數字
if num.isdigit():
# 調用factor函數找出num的所有因數
print("%s的因數為:%s" % (num,factor(int(num))))
# 判斷num是否等於quit,如果是quit跳出循環
elif num == "quit":
break;
# 輸出錯誤信息提示
else:
print("輸入錯誤,請輸入一個自然數或者輸入quit退出程序")

代碼解讀

使用while循環,並且設置循環條件為True,目的是讓程序一直處於運行狀態,隨時等待學生的輸入。

在這種情況下,程序需要提供一種程序退出機制,讓學生來退出程序。這種退出機制就是學生可以輸入quit字元串來退出程序。退出機制的實現就是在循環體內部判斷學生輸入的內容,如果輸入的內容是quit,就調用break語句跳出while循環,程序的執行自然就結束了。

在while循環體內部,首先會提示學生輸入一個自然數,或輸入quit來退出程序,學生輸入的內容被賦值給num變數。然後程序會判斷num的內容是否是自然數,若是自然數就調用factor函數找出該自然數的所有因數,並輸出這些因數。若不是自然數,再判斷是否是quit,若是quit就調用break語句跳出循環,否則輸出錯誤提示信息。


Python只是一門工具,很多事情用execl內置的功能就可以了,並不需要使用Python,因為效率不高,但是如果當你的步驟複雜到一定的程度,就可以使用Python了,這就像兩條不平行的線,總會在一個複雜度相交。

寫程序肯定要查東西,用execl也是,如果說不用,那你肯定是記住了,熟能生巧。


推薦閱讀:
相关文章