【Python學習實踐教程】10個Python經典專案實戰,練手必備

住隔壁的王叔發表於2022-02-26

Python 是一種物件導向、解釋型、弱型別的指令碼語言,它也是一種功能強大而完善的通用型語言。

相比其他程式語言(比如 Java),Python 程式碼非常簡單,上手非常容易。比如我們要完成某個功能,如果用 Java 需要 100 行程式碼,但用 Python 可能只需要 20 行程式碼,這是 Python 具有巨大吸引力的一大特點。

Python 的兩大特色是清晰的語法和可擴充套件性:

  • Python 的語法非常清晰,它甚至不是一種格式自由的語言。例如,它要求 if 語句的下一行必須向右縮排,否則不能通過編譯。
  • Python的可擴充套件性體現為它的模組,Python 具有指令碼語言中最豐富和強大的類庫(這些類庫被形象地稱為“batteries included,內建電池”),這些類庫覆蓋了檔案 I/O、GUI、網路程式設計、資料庫訪問、文字操作等絕大部分應用場景。

此外,Python 的社群也很發達,即使一些小眾的應用場景,Python 往往也有對應的開源模組來提供解決方案。

Python 作為一門解釋型的語言,它天生具有跨平臺的特徵,只要為平臺提供了相應的 Python 直譯器,Python 就可以在該平臺上執行。(解釋型語言幾乎天然是跨平臺的。)

那Python這麼火爆,幾乎可以說是人人都要學Python,但是學是一回事,用又是另一回事了。理論終將是紙上談兵,是騾子是馬得拉出來溜溜。為了幫助大家更快的掌握Python,我給大家準備了10個Python經典專案實戰,附帶原始碼等。快來看看吧

1.Python Hello World 例項

# -*- coding: UTF-8 -*- 
# Filename : helloworld.py 
# author by : www.runoob.com 
# 該例項輸出 Hello World! print('Hello World!')

執行以上程式碼輸出結果為:

Hello World!

2.Python 數字求和

# -*- coding: UTF-8 -*- 
# Filename : test.py 
# author by : www.runoob.com 
# 使用者輸入數字 num1 = input('輸入第一個數字:')
num2 = input('輸入第二個數字:') 
# 求和 sum = float(num1) + float(num2) 
# 顯示計算結果 print('數字 {0} 和 {1} 相加結果為:{2}'.format(num1, num2, sum))

執行以上程式碼輸出結果為:

輸入第一個數字:1.5
輸入第二個數字:2.5 數字 1.5 和 2.5
相加結果為:4.0

3.Python 平方根

# -*- coding: UTF-8 -*- 
# Filename : test.py 
# author by : www.runoob.com 
num = float(input('請輸入一個數字:')) num_sqrt = num ** 0.5 
print(' %0.3f 的平方根為 %0.3f'%(num ,num_sqrt))

執行以上程式碼輸出結果為:

$ python test.py
請輸入一個數字:4
4.000 的平方根為 2.000

4.Python 二次方程

例項(Python 3.0+) 
# Filename : test.py 
# author by : www.runoob.com 
# 二次方程式 ax**2 + bx + c = 0
# a、b、c 使用者提供,為實數,a ≠ 0 
# 匯入 cmath(複雜數學運算) 模組 
import cmath 
a = float(input('輸入 a: ')) 
b = float(input('輸入 b: ')) 
c = float(input('輸入 c: ')) 

# 計算 
d = (b**2) - (4*a*c) 
# 兩種求解方式 
sol1 = (-b-cmath.sqrt(d))/(2*a) 
sol2 = (-b+cmath.sqrt(d))/(2*a) 
print('結果為 {0} 和 {1}'.format(sol1,sol2))

執行以上程式碼輸出結果為:

$ python test.py
輸入 a: 1
輸入 b: 5
輸入 c: 6
結果為 (-3+0j) 和 (-2+0j)
該例項中,我們使用了 cmath (complex math) 模組的 sqrt() 方法 來計算 平方根。

5.Python 計算三角形的面積

# -*- coding: UTF-8 -*- 
# Filename : test.py 
# author by : www.runoob.com 
a = float(input('輸入三角形第一邊長: ')) 
b = float(input('輸入三角形第二邊長: ')) 
c = float(input('輸入三角形第三邊長: '))
# 計算半周長 
s = (a + b + c) / 2 
# 計算面積 
area = (s*(s-a)*(s-b)*(s-c)) ** 0.5 
print('三角形面積為 %0.2f' %area)

執行以上程式碼輸出結果為:

$ python test.py
輸入三角形第一邊長: 5
輸入三角形第二邊長: 6
輸入三角形第三邊長: 7
三角形面積為 14.70

6.Python 計算圓的面積

# 定義一個方法來計算圓的面積 
def findArea(r): 
    PI = 3.142 
    return PI * (r*r) 
# 呼叫方法 
print("圓的面積為 %.6f" % findArea(5))

以上例項輸出結果為:

圓的面積為 78.550000

7.Python 隨機數生成

# -*- coding: UTF-8 -*- 
# Filename : test.py 
# author by : www.runoob.com
# 生成 0 ~ 9 之間的隨機數 
# 匯入 random(隨機數) 模組 
import random 
print(random.randint(0,9))

執行以上程式碼輸出結果為:

4

以上例項我們使用了 random 模組的 randint() 函式來生成隨機數,你每次 執行後都返回不同的數字(0 到 9),該函式的語法為: random.randint(a,b)

8.Python 攝氏溫度轉華氏溫度

# -*- coding: UTF-8 -*- 
# Filename : test.py 
# author by : www.runoob.com 
# 使用者輸入攝氏溫度 
# 接收使用者輸入 
celsius = float(input('輸入攝氏溫度: ')) 
# 計算華氏溫度 
fahrenheit = (celsius * 1.8) + 32 
print('%0.1f 攝氏溫度轉為華氏溫度為 %0.1f ' %(celsius,fahrenheit))

執行以上程式碼輸出結果為:

輸入攝氏溫度: 38 38.0
攝氏溫度轉為華氏溫度為 100.4

以上例項中,攝氏溫度轉華氏溫度的公式為 celsius * 1.8 = fahrenheit - 32。所以得到以下式子:

celsius = (fahrenheit - 32) / 1.8

9.Python 交換變數

# -*- coding: UTF-8 -*- 
# Filename : test.py 
# author by : www.runoob.com 
# 使用者輸入 
x = input('輸入 x 值: ') 
y = input('輸入 y 值: ') 
# 建立臨時變數,並交換 
temp = x 
x = y 
y = temp 
print('交換後 x 的值為: {}'.format(x)) 
print('交換後 y 的值為: {}'.format(y))

執行以上程式碼輸出結果為:

輸入 x 值: 2
輸入 y 值: 3
交換後 x 的值為: 3
交換後 y 的值為: 2

以上例項中,我們建立了臨時變數 temp ,並將 x 的值儲存在 temp 變數中, 接著將 y 值賦給 x,最後將 temp 賦值給 y 變數。

不使用臨時變數 我們也可以不建立臨時變數,用一個非常優雅的方式來交換變數:
x,y = y,x
所以以上例項就可以修改為:

例項
# -*- coding: UTF-8 -*- 
# Filename : test.py 
# author by : www.runoob.com 
# 使用者輸入
x = input('輸入 x 值: ') 
y = input('輸入 y 值: ') 
# 不使用臨時變數 
x,y = y,x 
print('交換後 x 的值為: {}'.format(x)) 
print('交換後 y 的值為: {}'.format(y))

執行以上程式碼輸出結果為:

輸入 x 值: 1
輸入 y 值: 2
交換後 x 的值為: 2
交換後 y 的值為: 1

10.Python if 語句

# Filename : test.py 
# author by : www.runoob.com 
# 使用者輸入數字 
num = float(input("輸入一個數字: ")) 
if num > 0: 
   print("正數") 
elif num == 0: 
   print("零") 
else: 
   print("負數")

執行以上程式碼輸出結果為:

輸入一個數字: 3
正數

我們也可以使用內嵌 if 語句來實現:

# Filename :test.py 
# author by : www.runoob.com 
# 內嵌 if 語句 
num = float(input("輸入一個數字: ")) 
if num >= 0: 
   if num == 0: 
      print("零") 
   else:
      print("正數") 
else: 
   print("負數")

執行以上程式碼輸出結果為:

輸入一個數字: 0

今天的十個案例就分享到這了,更多案例可以檢視下方目錄。如需獲取可私信我,或評論區留言,我看到後會一 一回復。

相關文章