您現在的位置是:首頁 > 籃球

Python初學者——全面概述最受歡迎的程式語言

  • 由 不靠譜的不靠譜 發表于 籃球
  • 2021-12-20
簡介friends = [‘abc’, ‘def’, ‘pqr’, ‘xyz’]for name in friends: print(name)for index in range(len(friends)): print(friends[in

python怎麼念

如果你是Python的新手,我建議你先檢視一些關於Python的概念其實都非常容易理解,比如函式,列表,字典等等。

我寫這篇文章的唯一目的是透過提供相關的適當註釋來幫助初學者,以便能夠更好地理解這些概念。

我將在本文中討論的主題是 -

Variables and data types——變數和資料型別

Working with strings——使用字串

Working with numbers——使用數字

Getting input from user——從使用者那裡獲取輸入

Mad Libs Game——Mad Lib Game

Lists——列表

Tuples——元組

Functions and return statement——函式和return語句

If statements——if語句

Dictionaries——字典

While loop——while迴圈

For loop——For迴圈

Exponent function——指數函式

2d Lists and Nested For Loop——2d列表和巢狀迴圈

Comments——註釋

Try/Except——Try/ExceptReading

external files——讀取外部檔案

Writing to external files——寫入外部檔案

Modules and pip——模組和pip

Classes and Objects——類和物件

使用字串 -

字串是使用最廣泛的資料型別,可以在字串變數中儲存數字,純文字,特殊字元。讓我們看一些程式碼來更好地理解字串。

print(“This is a string”)

這裡我們剛剛用雙引號列印了一個純文字。雙引號表示它是一個字串。

我們還可以將這個純文字儲存在名為“Variable”的佔位符中。

alpha_string = “Python is awesome”num_string = “25”special_string = “@*”alpha_num_string = “ms7”

Python初學者——全面概述最受歡迎的程式語言

這裡我們將值賦給變數。變數可用於在將來引用這些值,這樣我們就不必一次又一次地輸入文字。您可以觀察到我們可以在字串中儲存任何型別的值 - 數字,字母,特殊字元。

有許多函式可以與字串一起使用 -

legend = “Elon Musk”print(legend) #OUTPUT - Elon Muskprint(legend。upper()) #OUTPUT - ELON MUSKprint(legend。isupper()) #OUTPUT - Falseprint(legend。upper()。isupper())。 #OUTPUT - Trueprint(len(legend)) #OUTPUT - 9print(legend。replace(“Elon”, “Kimbal”)) #OUTPUT - Kimbal Musk

Python初學者——全面概述最受歡迎的程式語言

upper()函式是將所有字母轉換為大寫

isupper()函式檢查所有字元是否都是大寫。

這裡要注意的關鍵是我們也可以將這些方法連結在一起,例如 - legend。upper()。isupper()。這裡字串‘legend’將轉換為大寫字母,然後我們將檢查字元是否為大寫。

len()函式返回字串的長度。

replace()函式是替換字串中的特定文字。

這裡要注意的最重要的一點是字串是不可變的,不能被修改。

現在,您一定想知道,我們只是修改了字串並得到了輸出,那麼它們怎麼會是不可變的呢?接下來我會說明這種“不可變性”是如何工作的。

print(legend) #OUTPUT - Elon Muskprint(legend。upper()) #OUTPUT - ELON MUSKprint(legend) #OUTPUT - Elon Musk

Python初學者——全面概述最受歡迎的程式語言

在這裡,可以看到,在第二行中,我們將字串更改為大寫,但在第三行列印時,它仍然與原始字串相同。這些字串函式在此處不起作用。他們不能修改原始字串。事實上我們不能修改原始字串,如果我們這樣做了,我們就會得到一個錯誤提示。

legend = “Elon Musk”legend[1] = ‘k’Traceback (most recent call last): File “/Users/dhairyakumar/Downloads/FreeCodeCamp/demo。py”, line 9, in legend[1] = ‘k’TypeError: ‘str’ object does not support item assignment

Python初學者——全面概述最受歡迎的程式語言

在這裡,我試圖用‘k’替換字母‘l’但是提示出錯。

使用數字 -

在Python中,數字資料型別涵蓋了所有數值,不像其他程式語言,如C,C ++或Java,對於不同型別的數值,有不同的資料型別,如int,float,double等。

讓我們看一些程式碼來更好地理解數字。

print(2 * (3+2)) # OUTPUT = 10 print(10 % 3 ) # OUTPUT = 1num = -5。78print(num) # OUTPUT = -5。78print(abs(num)) # OUTPUT = 5。78print(str(num) + “ is my number”) # OUTPUT = -5。78 is my numberprint(round(num)) # OUTPUT = -6

Python初學者——全面概述最受歡迎的程式語言

這裡我們可以在print語句中執行一些計算,我們也可以為變數賦一個數字。這裡要注意的一點是,如果我們想要將字串和數字一起列印輸出,那麼我們需要將數字型別轉換為字串。

在數學模組中還有其他函式,如floor和ceil

from math import * print(ceil(num)) # OUTPUT = -5print(floor(num)) # OUTPUT = -6

Python初學者——全面概述最受歡迎的程式語言

從使用者那裡獲取輸入 -

我們可以使用input()函式從使用者那裡獲取輸入。

name = input(“Enter your name : ”)age = int(input(“Enter your age : ”))salary = float(input(“Enter your salary : ”))print(“Name = ” + name + “ : ” + “ Age = ” + str(age) + “ : ” + “Salary = ” + str(salary))#OUTPUTEnter your name : abcEnter your age : 25Enter your salary : 12000。67Name = abc : Age = 25 : Salary = 12000。67

Python初學者——全面概述最受歡迎的程式語言

這裡我們需要取一個整數輸入,那麼我們只需將input()函式型別轉換為int,對於十進位制值,我們將它轉​​換為float。

Mad Lib Game -

這是一個小遊戲,我們將從使用者那裡獲取輸入並嘗試形成一些有趣的句子。

color = input(“Enter a color : ”)plural_noun = input(“Enter a plural noun : ”)celeb = input(“Enter the celebrity : ”)c = “Roses are {} ”。format(color)p = “{} ar blue”。format(plural_noun)cl = “I love {}”。format(celeb)print(c)print(p)print(cl)#OUTPUTEnter a color : redEnter a plural noun : violetsEnter the celebrity : scarlettRoses are red violets ar blueI love scarlett

Python初學者——全面概述最受歡迎的程式語言

這裡的技巧是使用format()函式。

列表 -

列表是另一種在Python中廣泛使用的資料結構。它是可變的,即我們可以在宣告元素之後改變它們的值。

我們可以使用extend函式輕鬆地將2個列表附加到一起。

friends = [“abc”, “def”, “xyz”, “pqr”, “mno”,“def”]num = [4, 8, 12, 16, 20]friends。extend(num)print(friends)#OUTPUT [‘abc’, ‘def’, ‘xyz’, ‘pqr’, ‘mno’, ‘def’, 4, 8, 12, 16, 20]

Python初學者——全面概述最受歡迎的程式語言

zip()函式,它允許我們連線兩個或多個列表的值。

name = [“abc”, “def”, “xyz”, “pqr”]roll_num = [4, 8, 12, 16]mapped = zip(name, roll_num)print(set(mapped))#OUTPUT {(‘abc’, 4), (‘def’, 8), (‘pqr’, 16), (‘xyz’, 12)}

Python初學者——全面概述最受歡迎的程式語言

我們可以在列表中使用其他函式。

friends = [“abc”, “def”, “xyz”, “pqr”]friends。append(“karen”)print(friends) #OUTPUT = [‘abc’, ‘def’, ‘xyz’, ‘pqr’, ‘karen’]friends。insert(1, “Joe”)print(friends)#OUTPUT = [‘abc’, ‘Joe’, ‘def’, ‘xyz’, ‘pqr’]friends。remove(“abc”)print(friends)#OUTPUT = [‘def’, ‘xyz’, ‘pqr’]friends。pop()print(friends#OUTPUT = [‘abc’, ‘def’, ‘xyz’]print(friends。count(“def”))#OUTPUT = 1

Python初學者——全面概述最受歡迎的程式語言

這裡append()函式始終將值新增到列表的末尾。

如果我們想在特定位置插入一個值,那麼我們可以使用insert()函式。

remove()函式用於刪除particualr值。

pop()將始終刪除最後一個元素。

count()將返回特定元素的出現次數。

我們還可以在列表中使用sort()、reverse()和copy()等函式。

friends = [“abc”, “def”, “pqr”, “xyz”]friends。sort()print(friends)#OUTPUT[‘abc’, ‘def’, ‘pqr’, ‘xyz’]friends。reverse()print(friends)#OUTPUT[‘xyz’, ‘pqr’, ‘def’, ‘abc’]friends2 = friends。copy()print(friends2)#OUTPUT[‘abc’, ‘def’, ‘pqr’, ‘xyz’]

Python初學者——全面概述最受歡迎的程式語言

元組 -

元組與Python中的列表非常相似。主要區別在於它們是不可變的,即我們在聲明後不能改變元組的元素。

coordinates = (10, 4)print(coordinates) #OUTPUT = (10, 4)coordinates = [(10, 4), (6, 7), (0, 8)]print(coordinates[0][1]) #OUTPUT = 4

Python初學者——全面概述最受歡迎的程式語言

我們還可以在列表中巢狀元組。這裡我們可以將元素‘4’稱為座標[0] [1],因為(10,4)是列表的第0個元素,4是該元組的第1個元素。

函式和返回語句 -

函式用於執行一組特定的指令。它們是可重用的,因此我們可以為任何通用任務建立一個函式,比如計算一個數字的立方,將兩個數字相加等等。

def func(name): print(“Hello : ” + name)print(“Initial”)func(“John”)print(“Final”)#OUTPUTInitialHello : JohnFinal

Python初學者——全面概述最受歡迎的程式語言

python中的函式使用關鍵字def定義。這裡要注意的兩個關鍵事項是 -

我們可以將任何值傳遞給我們想要在其中使用的函式。該值稱為引數(parameter)。

函式的執行順序如上所示。輸出‘Initial’後,控制元件將移至func()並執行整個函式,然後輸出‘Final’。

我們還可以使用‘return’關鍵字從函式返回一個值。

def cube(n): return pow(n, 3)print(cube(3)) #OUTPUT = 27

Python初學者——全面概述最受歡迎的程式語言

If語句 -

If語句用於使我們的程式更智慧,因為我們可以根據程式的條件執行不同的程式碼。讓我們從一個簡單的例子開始。

is_male = Trueif is_male: print(“You are a male”)else: print(“You are not a male”)#OUTPUTYou are a male

Python初學者——全面概述最受歡迎的程式語言

這裡我們檢查布林變數is_male是否為真(true)或假(false),並根據它進一步執行程式碼。

這裡需要注意的關鍵是,“if語句”總是基於簡單的真和假邏輯,所以不管我們使用什麼條件或變數,結果總是要麼為真,要麼為假。如下:

if 5: print(“True”) # OUTPUT = Trueif -1: print(“True”) # OUTPUT = Trueif 0: print(“True”) # Nothing will be printed

Python初學者——全面概述最受歡迎的程式語言

所以除了0以外的所有值都被認為是正確的。

如果我們有超過2個條件,那麼我們可以使用else If,它在Python中被寫成elif。

a = 0if a > 0: print(“a is greater than 1 ”)elif a < 0: print(“a is less than 1 ”)else: print(“a is 0 ”)#OUTPUT a is 0

Python初學者——全面概述最受歡迎的程式語言

字典 -

字典是鍵值對。在這裡,我們儲存使用鍵對映的值,我們可以透過傳入鍵檢索這些值。

這裡需要注意的一點是鍵值應該是唯一的,我們也可以使用數字鍵。

monthConversions = { “Jan”: “January”, “Feb”: “February”, “Mar”: “March”, “Apr”: “April”, “May”: “May”, “Jun”: “June”, “Jul”: “July”, “Aug”: “August”, “Sep”: “September”, “Oct”: “October”, “Nov”: “November”, “Dec”: “December”,}

Python初學者——全面概述最受歡迎的程式語言

我們可以使用2種方法檢索值。

1。print(monthConversions[“Jan”]) # OUTPUT = January2。print(monthConversions。get(“Jan”))# OUTPUT = Januaryprint(monthConversions。get(“abc”, “Invalid Key”))# OUTPUT = Invalid Key

Python初學者——全面概述最受歡迎的程式語言

get()方法非常有用,因為我們還可以傳入預設值。因此,如果我們傳入的鍵不在字典中,那麼將輸出預設值。

while迴圈 -

當我們想要重複執行語句或一組語句時,使用迴圈。

i = 1while i <= 5: print(i) i += 1print(“While loop ended”)#OUTPUT12345While loop ended

Python初學者——全面概述最受歡迎的程式語言

在這裡,我們從i = 1開始,一直增加到5,然後當i的值變為6時,我們走出迴圈並輸出“While loop ended”。因此,只要條件為真,迴圈內的語句就會被執行。

For迴圈 -

For迴圈對於迭代來說是非常強大和有用的工具。它們可以與字串一起使用,如下所示 -

string = “Python”for alphabet in string: print(alphabet)#OUTPUTPython

Python初學者——全面概述最受歡迎的程式語言

我們也可以使用for迴圈遍歷列表。

friends = [‘abc’, ‘def’, ‘pqr’, ‘xyz’]for name in friends: print(name)for index in range(len(friends)): print(friends[index])

Python初學者——全面概述最受歡迎的程式語言

兩種情況下的輸出都是相同的

abcdefpqrxyz

Python初學者——全面概述最受歡迎的程式語言

如果你想使用索引遍歷列表,那麼你可以使用range()函式,我們可以建立一個迴圈變數,它將逐個輸出儲存在列表中的所有值。

指數函式 -

通常表示為“^”執行在Python中使用* *。

print(2**4) #OUTPUT = 16

Python初學者——全面概述最受歡迎的程式語言

我們還可以建立一個函式來執行此操作,如下所示。

def pow(base_num, pow_num): res = 1 for i in range(pow_num): res = res * base_num return resprint(pow(2, 5)) #OUTPUT = 32

Python初學者——全面概述最受歡迎的程式語言

2D列表和巢狀迴圈 -

2d列表本質上是一個巢狀列表。我們可以使用2d列表在Python中建立類似網格的結構。

num_grid = [ [1, 2, 3], [4, 5, 6], [7, 8, 9], [0]]print(num_grid[1][2]) # OUTPUT = 6

Python初學者——全面概述最受歡迎的程式語言

如果要輸出此列表的每個元素,則可以使用巢狀for迴圈執行此操作。

for row in num_grid: for col in row: print(col, end=“ ”)#OUTPUT1 2 3 4 5 6 7 8 9 0

Python初學者——全面概述最受歡迎的程式語言

這裡我們使用了一個巢狀的for迴圈來遍歷整個列表。在第一次迭代中,變數行將引用列表的第一個元素,即[1,2,3],而col將引用該子列表的每個元素,即1,2,3。

註釋 -

程式語言中使用註釋來提供有關程式碼塊的資訊或忽略某些行。

‘’‘This function prints Hello’‘’def func(): print(“Hello”) #print(“Hi”)

Python初學者——全面概述最受歡迎的程式語言

上面的函式將只輸出Hello,Hi將被忽略,因為我們在它前面放置了‘#’,所以Python將忽略這一行。

#用於單行註釋

‘’‘用於多行註釋

Try / Except -

Try / Except是Python中一個非常重要的主題,因為它允許我們處理各種型別的錯誤和異常。

我們可以在try塊中放置我們認為可能導致錯誤的任何程式碼,如果遇到錯誤,將執行except塊。

try: num = int(input(“Enter a number : ”)) print(num)except: print(“Invalid Input”)

Python初學者——全面概述最受歡迎的程式語言

在上面的程式中,如果我們輸入一個數值,那麼程式將正常工作,但如果我們輸入一個字串或一個浮點數然後沒有try / except塊,程式就會崩潰,但現在它只會輸出’Invalid Input‘(無效輸入)。這一點很重要,因為當我們編寫生產級別的程式時,我們不希望在使用者不能提供有效輸入時程式崩潰,而是希望程式儘可能穩定。

儘管上面的程式碼可以很好地工作,但是except block仍然存在一個問題。except塊將輸出相同的訊息,而不考慮錯誤的原因。

try: val = 10/0 num = int(input(“Enter a number : ”)) print(num)except: print(“Invalid Input”)

Python初學者——全面概述最受歡迎的程式語言

在這裡,程式甚至在接受輸入之前就會崩潰,因為程式不能處理除0。但問題是我們仍然會看到無效的輸入。定義except block的正確方法是定義我們想要處理的異常型別。

try: val = 10/0 num = int(input(“Enter a number : ”)) print(num)except ValueError as err: print(“Invalid Input”) print(err)except ZeroDivisionError as err: print(“Division by zero is not allowed”) print(“Error = ” , err)

Python初學者——全面概述最受歡迎的程式語言

在這裡,程式將正確地處理這兩個異常。我們可以做的另一件事情是,我們還可以透過將except語句儲存在變數中來輸出錯誤。

所以,如果我們執行上述程式,那麼我們將得到 -

Division by zero is not allowedError = division by zero

Python初學者——全面概述最受歡迎的程式語言

讀取外部檔案 -

我們可以訪問Python中的各種外部檔案,我們也可以修改它們。我們使用open()函式開啟一個特定的檔案。

emp_file = open(“emp。txt”, “r”)

Python初學者——全面概述最受歡迎的程式語言

“emp。txt”是檔案的名稱。如果該檔案存在於某個其他目錄中,則指定絕對路徑。“r”是檔案的模式。我們可以對檔案使用多種模式。

emp。txtMike - CEOJohn - AccountantJane - ReceptionistJoe - DeveloperKelly - Customer Service

Python初學者——全面概述最受歡迎的程式語言

r - 它允許我們以只讀模式開啟檔案。我們無法修改檔案的內容,我們只能檢視檔案的內容。

w - 它允許我們以寫入模式開啟檔案,因此我們也可以修改檔案的內容並閱讀它。

a - 它允許我們在檔案末尾附加任何資訊。這裡需要注意的一點是,我們無法修改以前寫入的資訊,而只能在檔案末尾寫入新資訊。

r + - 它為我們提供了讀寫許可權。

emp_file = open(“emp。txt”, “r”)print(emp_file。readable())print(emp_file。readline())emp_file。close()#OUTPUTTrueMike - CEO

Python初學者——全面概述最受歡迎的程式語言

始終記得在所有操作完成後關閉該檔案。

我們可以使用readline()函式從檔案中讀取一行。注意,我們已經使用readable()函式來檢查檔案是否可讀。讀取檔案所有行的更好方法是遍歷所有行並逐個輸出出來。

emp_file = open(“emp。txt”, “r”)for employee in emp_file。readlines(): print(employee)emp_file。close()#OUTPUTMike - CEOJohn - AccountantJane - ReceptionistJoe - DeveloperKelly - Customer Service

Python初學者——全面概述最受歡迎的程式語言

寫入外部檔案 -

我們可以透過將模式指定為“w”或“a”來寫入檔案。

emp_file = open(“emp。txt”, “a”)emp_file。write(“\nRachel - Customer Service”)emp_file。close()

Python初學者——全面概述最受歡迎的程式語言

執行上面的程式碼後,我們的emp。txt檔案將如下所示 -

emp。txtMike - CEOJohn - AccountantJane - ReceptionistJoe - DeveloperKelly - Customer ServiceRachel - Customer Service

Python初學者——全面概述最受歡迎的程式語言

請注意,我們已將模式指定為“a”,如果我們將模式指定為“w”,則它將覆蓋之前寫入的所有值。

emp_file = open(“emp。txt”, “w”)emp_file。write(“\nKaren - Developer”)emp_file。close()

Python初學者——全面概述最受歡迎的程式語言

執行上面的程式碼後,我們的emp。txt檔案將如下所示 -

emp。txtKaren - Developer

Python初學者——全面概述最受歡迎的程式語言

可以看到所有以前的值都已消失,我們只剩下一行。

模組和pip -

模組(module) - 它只是一個包含各種語句,函式,變數等的檔案。關於這一點的好處是我們可以使用其他人編寫的程式碼而無需實際複製它。

pip - 它是一個包管理器,允許我們安裝各種Python模組。

demo_module。pydef square(num): return num*num

Python初學者——全面概述最受歡迎的程式語言

這裡我們聲明瞭一個名為demo_module。py的普通檔案,我們已經定義了一個簡單的函式square,它只是對一個數字進行平方並返回它。這裡要注意的是我們也可以在這個檔案之外使用這段程式碼。

demo。pyimport demo_moduleprint(demo_module。square(4)) #OUTPUT = 16

Python初學者——全面概述最受歡迎的程式語言

這裡我們在demo。py中呼叫了函式square,但它實際上是在demo_module。py中定義的。Python的這一特性使其成為一種優秀的程式語言,因為我們可以重複使用我們的程式碼而無需一次又一次地實際複製它。

學習Python模組非常重要,因為它們可以幫助您節省大量的時間,因為您可以在自己的程式碼中使用由其他人定義的各種函式,而不必編寫每行程式碼。

pip允許您安裝這些模組。所以如果你想安裝一個名為“abc”的模組,那麼你可以寫 -

pip install abc

請注意,大多數Python模組都可以使用pip安裝,但是如果遇到任何無法使用pip安裝的模組,那麼很可能會有一個與之相關的詳細文件,說明如何安裝該特定模組。

類和物件 -

類和物件是任何面向物件程式語言的組成部分。

類基本上允許我們在程式中對真實世界物件進行建模。因此,您可以將其視為建立自己的資料型別。因此,如果你想代表像學生這樣複雜的現實世界實體,那麼你就不能使用基本資料型別,因為學生有各種與他/她相關的東西 - 名字,專業,成績等不可能使用單個數據型別(如字串或數字)表示。所以我們可以使用類來建立這種複雜的資料型別。

類是定義物件功能的藍圖

物件是類的例項。我們使用物件訪問類的所有功能

Student。pyclass Student: def __init__(self, name, major, gpa, is_on_probation): self。name = name self。major = major self。gpa = gpa self。is_on_probation = is_on_probation def on_honor_roll(self): if self。gpa >= 3。5: return True else: return False

Python初學者——全面概述最受歡迎的程式語言

在這裡我們定義了一個__init__函式,我們初始化了我們想要與我們的類關聯的所有變數或屬性。如果你來自傳統的程式設計背景並且已經學習了C,C ++或Java等語言,那麼你可以把它想象成一個建構函式。

on_honor_roll()是一種允許我們進一步擴充套件類功能的方法。

demo。py from Student import Studentstudent1 = Student(’Jim‘, ’Business‘, 3。4, False)student2 = Student(’Kim‘, ’Business‘, 3。9, False)print(student1。gpa)print(student2。on_honor_roll())#OUTPUT3。4True

Python初學者——全面概述最受歡迎的程式語言

這裡我們建立了Student類的兩個例項或物件,即-student1和student2,我們用特定的值初始化它們。當我們編寫student1 = Student()時,就會呼叫__init__method,並使用在’()‘中傳遞的值初始化物件。

Top