色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          "); //-->

          博客專欄

          EEPW首頁 > 博客 > Python 基礎(chǔ)知識:語法、數(shù)據(jù)類型和控制結(jié)構(gòu)

          Python 基礎(chǔ)知識:語法、數(shù)據(jù)類型和控制結(jié)構(gòu)

          發(fā)布人:ygtu 時間:2023-09-11 來源:工程師 發(fā)布文章
          推薦:使用NSDT場景編輯器快速搭建3D應(yīng)用場景

          如果開發(fā)和環(huán)境中已安裝 Python,請啟動 Python REPL 和代碼。或者,如果您想跳過安裝并立即開始編碼,我建議您前往Google Colab并一起編碼。

          你好,Python!

          在我們用Python編寫經(jīng)典的“Hello,world!”程序之前,這里有一些關(guān)于語言的信息。Python是一種解釋型語言。這是什么意思?

          在任何編程語言中,您編寫的所有源代碼都應(yīng)翻譯成機(jī)器語言。雖然像C和C++這樣的編譯語言在程序運(yùn)行之前需要整個機(jī)器代碼,但解釋器會解析源代碼并動態(tài)解釋它。

          創(chuàng)建一個 Python 腳本,鍵入以下代碼并運(yùn)行它:

          print("Hello, World!")

          為了打印出Hello, World!,我們使用了“print()”函數(shù),這是Python中眾多內(nèi)置函數(shù)之一。

          在這個超級簡單的示例中,請注意“Hello, World!”是一個序列 - 一串字符。Python 字符串由一對單引號或雙引號分隔。因此,要打印出任何消息字符串,您可以使用“print(”<message_string>“)”。

          讀取用戶輸入

          現(xiàn)在讓我們更進(jìn)一步,使用 'input()' 函數(shù)讀取用戶的一些輸入。應(yīng)始終提示用戶讓他們知道應(yīng)輸入的內(nèi)容。

          這是一個簡單的程序,它將用戶名作為輸入并問候他們。

          注釋通過向用戶提供其他上下文來幫助提高代碼的可讀性。Python 中的單行注釋以 # 開頭。

          請注意,下面代碼片段中的字符串前面有一個“f”。此類字符串稱為格式化字符串或 f 字符串。若要替換 f 字符串中變量的值,請?jiān)谝粚Υ罄ㄌ杻?nèi)指定變量的名稱,如下所示:

          # Get user input
          user_name = input("Please enter your name: ")
          
          # Greet the user
          print(f"Hello, {user_name}! Nice to meet you!")

          運(yùn)行程序時,系統(tǒng)將首先提示您輸入,然后打印出問候消息:

          Please enter your name: Bala
          Hello, Bala! Nice to meet you!

          讓我們繼續(xù)學(xué)習(xí) Python 中的變量和數(shù)據(jù)類型。

          Python 中的變量和數(shù)據(jù)類型

          在任何編程語言中,變量都像存儲信息的容器。在我們到目前為止編寫的代碼中,我們已經(jīng)創(chuàng)建了一個變量 'user_name'。當(dāng)用戶輸入其名稱(字符串)時,它將存儲在“user_name”變量中。

          Python 中的基本數(shù)據(jù)類型

          讓我們來看看 Python 中的基本數(shù)據(jù)類型:“int”、“float”、“str”和“bool”,使用相互構(gòu)建的簡單示例:

          整數(shù)('int'):整數(shù)是沒有小數(shù)點(diǎn)的整數(shù)。您可以創(chuàng)建整數(shù)并將它們分配給變量,如下所示:

          age = 25
          discount= 10

          這些是將值賦給變量的賦值語句。在 C 等語言中,聲明變量時必須指定數(shù)據(jù)類型,但 Python 是一種動態(tài)類型語言。它從值推斷數(shù)據(jù)類型。因此,您可以重新分配一個變量來保存完全不同的數(shù)據(jù)類型的值:

          number = 1
          number = 'one'

          您可以使用“type”函數(shù)檢查Python中任何變量的數(shù)據(jù)類型:

          number = 1
          print(type(number))

          “數(shù)字”是一個整數(shù):

          Output >>> <class 'int'>

          我們現(xiàn)在為“數(shù)字”分配一個字符串值:

          number = 'one'
          print(type(number))
          Output >>> <class 'str'>

          浮點(diǎn)數(shù)(“float”):浮點(diǎn)數(shù)表示帶有小數(shù)點(diǎn)的實(shí)數(shù)。您可以創(chuàng)建“float”數(shù)據(jù)類型的變量,如下所示:

          height = 5.8
          pi = 3.14159

          您可以對數(shù)值數(shù)據(jù)類型執(zhí)行各種運(yùn)算(加法、減法、下限除法、冪等)。以下是一些示例:

          # Define numeric variables
          x = 10
          y = 5
          
          # Addition
          add_result = x + y
          print("Addition:", add_result)  # Output: 15
          
          # Subtraction
          sub_result = x - y
          print("Subtraction:", sub_result)  # Output: 5
          
          # Multiplication
          mul_result = x * y
          print("Multiplication:", mul_result)  # Output: 50
          
          # Division (floating-point result)
          div_result = x / y
          print("Division:", div_result)  # Output: 2.0
          
          # Integer Division (floor division)
          int_div_result = x // y
          print("Integer Division:", int_div_result)  # Output: 2
          
          # Modulo (remainder of division)
          mod_result = x % y
          print("Modulo:", mod_result)  # Output: 0
          
          # Exponentiation
          exp_result = x ** y
          print("Exponentiation:", exp_result)  # Output: 100000

          字符串('str'):字符串是字符序列,括在單引號或雙引號中。

          name = "Alice"
          quote = 'Hello, world!'

          布爾值(“bool”):布爾值表示“真”或“假”,表示條件的真值。

          is_student = True
          has_license = False

          Python 在處理不同數(shù)據(jù)類型方面的靈活性使您可以有效地存儲、執(zhí)行各種操作和操作數(shù)據(jù)。

          下面是一個示例,將我們迄今為止學(xué)到的所有數(shù)據(jù)類型放在一起:

          # Using different data types together
          age = 30
          score = 89.5
          name = "Bob"
          is_student = True
          
          # Checking if score is above passing threshold
          passing_threshold = 60.0
          is_passing = score >= passing_threshold
          
          print(f"{name=}")
          print(f"{age=}")
          print(f"{is_student=}")
          print(f"{score=}")
          print(f"{is_passing=}")

          這是輸出:

          Output >>>
          
          name='Bob'
          age=30
          is_student=True
          score=89.5
          is_passing=True
          超越基本數(shù)據(jù)類型

          假設(shè)您正在管理課堂上有關(guān)學(xué)生的信息。創(chuàng)建一個集合(存儲所有學(xué)生的信息)會比為每個學(xué)生重復(fù)定義變量更有幫助。

          列表

          列表是項(xiàng)的有序集合,括在一對方括號內(nèi)。列表中的項(xiàng)都可以是相同或不同的數(shù)據(jù)類型。列表是可變的,這意味著您可以在創(chuàng)建后更改其內(nèi)容。

          在這里,“student_names”包含學(xué)生的姓名:

          # List
          student_names = ["Alice", "Bob", "Charlie", "David"]
          元組

          元組是類似于列表的有序集合,但它們是不可變的,這意味著您在創(chuàng)建后無法更改其內(nèi)容。

          假設(shè)您希望“student_scores”成為包含學(xué)生考試成績的不可變集合。

          # Tuple
          student_scores = (85, 92, 78, 88)
          字典

          字典是鍵值對的集合。字典的鍵應(yīng)該是唯一的,并且它們映射到相應(yīng)的值。它們是可變的,允許您將信息與特定鍵相關(guān)聯(lián)。

          在這里,“student_info”包含有關(guān)每個學(xué)生的信息(姓名和分?jǐn)?shù))作為鍵值對:

          student_info = {'Alice': 85, 'Bob': 92, 'Charlie': 78, 'David': 88}

          但是等等,有一種更優(yōu)雅的方法可以在 Python 中創(chuàng)建字典。

          我們即將學(xué)習(xí)一個新概念:字典理解。如果不是馬上就清楚了,不要擔(dān)心。您可以隨時了解更多信息并在以后處理它。

          但是理解是非常直觀的理解。如果您希望“student_info”詞典將學(xué)生姓名作為鍵,并將他們相應(yīng)的考試成績作為值,則可以像這樣創(chuàng)建字典:

          # Using a dictionary comprehension to create the student_info dictionary
          student_info = {name: score for name, score in zip(student_names, student_scores)}
          
          print(student_info)

          請注意我們?nèi)绾问褂?'zip()' 函數(shù)同時遍歷 'student_names' 列表和 'student_scores' 元組。

          Output >>>
          
          {'Alice': 85, 'Bob': 92, 'Charlie': 78, 'David': 88}

          在此示例中,字典理解直接將“student_names”列表中的每個學(xué)生姓名與“student_scores”元組中的相應(yīng)考試分?jǐn)?shù)配對,以創(chuàng)建“student_info”字典,其中姓名作為鍵,分?jǐn)?shù)作為值。

          現(xiàn)在您已經(jīng)熟悉了原始數(shù)據(jù)類型和一些序列/可迭代對象,讓我們繼續(xù)討論的下一部分:控制結(jié)構(gòu)。

          Python 中的控制結(jié)構(gòu)

          運(yùn)行 Python 腳本時,代碼執(zhí)行按順序執(zhí)行,順序與代碼在腳本中執(zhí)行的順序相同。

          有時,您需要實(shí)現(xiàn)邏輯來根據(jù)某些條件控制執(zhí)行流,或者循環(huán)通過可迭代對象來處理其中的項(xiàng)。

          我們將了解 if-else 語句如何促進(jìn)分支和條件執(zhí)行。我們還將學(xué)習(xí)如何使用循環(huán)迭代序列,循環(huán)控制語句中斷并繼續(xù)。

          如果語句

          當(dāng)僅當(dāng)特定條件為真時才需要執(zhí)行代碼塊時,可以使用“if”語句。如果條件的計(jì)算結(jié)果為 false,則不執(zhí)行代碼塊。

          Python 基礎(chǔ)知識:語法、數(shù)據(jù)類型和控制結(jié)構(gòu)


          圖片來源:作者

          請考慮以下示例:

          score = 75
          
          if score >= 60:
              print("Congratulations! You passed the exam.")

          在此示例中,僅當(dāng)“score”大于或等于 60 時,才會執(zhí)行“if”塊中的代碼。由于“分?jǐn)?shù)”是 75,因此消息“恭喜!你通過了考試“,將打印出來。

          Output >>> Congratulations! You passed the exam.
          If-else 條件語句

          “if-else”語句允許您在條件為真時執(zhí)行一個代碼塊,如果條件為假,則執(zhí)行另一個代碼塊。

          Python 基礎(chǔ)知識:語法、數(shù)據(jù)類型和控制結(jié)構(gòu)


          圖片來源:作者

          讓我們以測試分?jǐn)?shù)示例為基礎(chǔ):

          score = 45
          
          if score >= 60:
              print("Congratulations! You passed the exam.")
          else:
              print("Sorry, you did not pass the exam.")

          在這里,如果“分?jǐn)?shù)”小于 60,則將執(zhí)行“else”塊中的代碼:

          Output >>> Sorry, you did not pass the exam.
          If-elif-else Ladder

          當(dāng)您有多個條件要檢查時,將使用“if-elif-else”語句。它允許您測試多個條件,并為遇到的第一個 true 條件執(zhí)行相應(yīng)的代碼塊。

          如果 'if' 和所有 'elif' 語句中的條件計(jì)算結(jié)果為 false,則執(zhí)行 'else' 塊。

          Python 基礎(chǔ)知識:語法、數(shù)據(jù)類型和控制結(jié)構(gòu)


          圖片來源:作者

          score = 82
          
          if score >= 90:
              print("Excellent! You got an A.")
          elif score >= 80:
              print("Good job! You got a B.")
          elif score >= 70:
              print("Not bad! You got a C.")
          else:
              print("You need to improve. You got an F.")

          在此示例中,程序根據(jù)多個條件檢查“分?jǐn)?shù)”。將執(zhí)行第一個 true 條件塊中的代碼。由于“分?jǐn)?shù)”是 82,我們得到:

          Output >>> Good job! You got a B.
          嵌套 If 語句

          當(dāng)您需要檢查另一個條件中的多個條件時,使用嵌套的“if”語句。

          name = "Alice"
          score = 78
          
          if name == "Alice":
              if score >= 80:
                  print("Great job, Alice! You got an A.")
              else:
                  print("Good effort, Alice! Keep it up.")
          else:
              print("You're doing well, but this message is for Alice.")

          在此示例中,有一個嵌套的“if”語句。首先,程序檢查“名稱”是否為“愛麗絲”。如果為 true,則檢查“分?jǐn)?shù)”。由于“分?jǐn)?shù)”為 78,因此執(zhí)行內(nèi)部的“else”塊,打印“努力好,愛麗絲!堅(jiān)持下去。

          Output >>> Good effort, Alice! Keep it up.

          Python 提供了幾個循環(huán)構(gòu)造來迭代集合或執(zhí)行重復(fù)性任務(wù)。

          對于循環(huán)

          在 Python 中,“for”循環(huán)提供了一個簡潔的語法,讓我們迭代現(xiàn)有的可迭代對象。我們可以像這樣迭代“student_names”列表:

          student_names = ["Alice", "Bob", "Charlie", "David"]
          
          for name in student_names:
              print("Student:", name)

          上面的代碼輸出:

          Output >>>
          
          Student: Alice
          Student: Bob
          Student: Charlie
          Student: David
          而循環(huán)

          如果你想在條件為真的情況下執(zhí)行一段代碼,你可以使用“while”循環(huán)。

          讓我們使用相同的“student_names”列表:

          # Using a while loop with an existing iterable
          
          student_names = ["Alice", "Bob", "Charlie", "David"]
          index = 0
          
          while index < len(student_names):
              print("Student:", student_names[index])
              index += 1

          在此示例中,我們有一個包含學(xué)生姓名的列表“student_names”。我們使用“while”循環(huán)通過跟蹤“index”變量來迭代列表。

          只要“索引”小于列表的長度,循環(huán)就會繼續(xù)。在循環(huán)中,我們打印每個學(xué)生的姓名并遞增“索引”以移動到下一個學(xué)生。請注意使用“l(fā)en()”函數(shù)來獲取列表的長度。

          這實(shí)現(xiàn)了與使用“for”循環(huán)遍歷列表相同的結(jié)果:

          Output >>>
          
          Student: Alice
          Student: Bob
          Student: Charlie
          Student: David

          讓我們使用一個 'while' 循環(huán),從列表中彈出元素,直到列表為空:

          student_names = ["Alice", "Bob", "Charlie", "David"]
          
          while student_names:
              current_student = student_names.pop()
              print("Current Student:", current_student)
          
          print("All students have been processed.")

          列表方法“pop”刪除并返回列表中存在的最后一個元素。

          在此示例中,只要“student_names”列表中存在元素,“while”循環(huán)就會繼續(xù)。在循環(huán)中,“pop()”方法用于刪除并返回列表中的最后一個元素,并打印當(dāng)前學(xué)生的姓名。

          循環(huán)將繼續(xù),直到所有學(xué)生都已處理完畢,并在循環(huán)外打印最后一條消息。

          Output >>>
          
          Current Student: David
          Current Student: Charlie
          Current Student: Bob
          Current Student: Alice
          All students have been processed.

          “for”循環(huán)通常更簡潔,更易于閱讀,用于迭代現(xiàn)有的可迭代對象(如列表)。但是,當(dāng)循環(huán)條件更復(fù)雜時,“while”循環(huán)可以提供更多的控制。

          循環(huán)控制語句

          “break”過早退出循環(huán),“continue”跳過當(dāng)前迭代的其余部分并移動到下一個迭代。

          下面是一個示例:

          student_names = ["Alice", "Bob", "Charlie", "David"]
          
          for name in student_names:
              if name == "Charlie":
                  break
              print(name)

          當(dāng)“名字”是查理時,控件脫離循環(huán),給我們輸出:

          Output >>>
          Alice
          Bob
          模擬執(zhí)行時循環(huán)行為

          在Python中,沒有像其他一些編程語言那樣的內(nèi)置“do-while”循環(huán)。但是,您可以使用帶有“break”語句的“while”循環(huán)來實(shí)現(xiàn)相同的行為。以下是在 Python 中模擬“do-while”循環(huán)的方法:

          while True:
              user_input = input("Enter 'exit' to stop: ")
              if user_input == 'exit':
                  break

          在此示例中,循環(huán)將無限期地繼續(xù)運(yùn)行,直到用戶進(jìn)入“exit”。循環(huán)至少運(yùn)行一次,因?yàn)闂l件最初設(shè)置為“True”,然后在循環(huán)內(nèi)檢查用戶的輸入。如果用戶輸入“exit”,則執(zhí)行“break”語句,退出循環(huán)。

          下面是一個示例輸出:

          Output >>>
          Enter 'exit' to stop: hi
          Enter 'exit' to stop: hello
          Enter 'exit' to stop: bye
          Enter 'exit' to stop: try harder!
          Enter 'exit' to stop: exit

          請注意,此方法類似于其他語言中的“do-while”循環(huán),其中循環(huán)體保證在檢查條件之前至少執(zhí)行一次。

          總結(jié)和后續(xù)步驟

          我希望您能夠毫無困難地編寫本教程的代碼。現(xiàn)在您已經(jīng)了解了 Python 的基礎(chǔ)知識,是時候開始編寫一些超級簡單的項(xiàng)目了,應(yīng)用您學(xué)到的所有概念。

          原文鏈接:Python 基礎(chǔ)知識:語法、數(shù)據(jù)類型和控制結(jié)構(gòu) (mvrlink.com)


          *博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。



          關(guān)鍵詞: 數(shù)據(jù)分析 python

          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉