Python學習篇:Python基礎知識(三)

目錄

1 Python保留字

2 注釋

?3?行與縮進

?編輯4?多行語句

5 輸入和輸出

6 變量

7 數據類型

8?類型轉換

9 表達式

10 運算符


1 Python保留字

Python保留字(也稱為關鍵字)是Python編程語言中預定義的、具有特殊含義的標識符。這些保留字不能用作變量名、函數名或其他標識符的名稱。以下是Python 3中的保留字列表:

['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

?請注意,保留字列表可能會隨著Python版本的更新而發生變化,因此Python的標準庫提供了一個keyword模塊,可以輸出當前版本的所有關鍵字,運行下列代碼即可。

# 導入Python的keyword模塊
import keyword # keyword.kwlist是一個列表,包含了所有的Python保留字,print函數會輸出這個列表的內容到控制臺
print(keyword.kwlist) 

2 注釋

單行注釋以 #?開頭,示例如下:

# 第一個注釋
print("Hello Word!!!")  # 第二個注釋

多行注釋可以用多個?#?號,一行一行進行注釋,也可以用 '''?和?""",示例如下:?

ps:注釋用到'''?和?"""是英文字符!!!

# 第一個注釋
# 第二個注釋'''
第三個注釋
第四個注釋
'''"""
第五個注釋
第六個注釋
"""
print("Hello Word!!!")

執行以上代碼,輸出結果均為:Hello Word!!!(注釋不影響)

ps:注釋對代碼執行沒有任何直接影響。注釋是代碼中的解釋性文本,用于為代碼提供額外的信息,幫助開發者和其他讀者理解代碼的功能、邏輯和目的。注釋不會被Python解釋器或編譯器執行,它們僅作為代碼的一部分存在,用于提高代碼的可讀性和可維護性!!!

?3?行與縮進

在Python中,縮進是非常重要的,因為它用于定義代碼塊的結構。Python沒有像其他語言(如C、Java等)中的大括號 { }?來明確標記代碼塊的開始和結束,而是依賴于縮進來表示代碼塊,示例如下:

if True:# 這個條件語句下的代碼塊應該縮進print("Condition is True")
if False:# 這個條件語句下的代碼塊應該縮進print("Condition is False")

以下代碼最后一行語句縮進數的空格數不一致,會導致運行錯誤,執行后會出現類似以下錯誤:

IndentationError: unindent does not match any outer indentation level


4?多行語句

在Python中,你可以在行的末尾使用反斜杠 (\) 來指示語句將在下一行繼續。但是,這種方式并不常用,因為它可能會降低代碼的可讀性。它主要用于那些Python解釋器無法自動識別為跨越多行的語句,比如字符串或長表達式,示例如下:

s = "這是一個很長的字符串,\
它跨越了多行"

當你在括號(圓括號?(), 方括號?[], 花括號?{})中編寫代碼時,Python會自動將多行視為一個單一的語句,而無需使用反斜杠。這是處理長列表、元組、字典和函數調用時常用的方法,示例如下:

my_list = ["apple","banana","cherry",
]my_func(arg1,arg2,arg3,
)

5 輸入和輸出

輸出函數print(),在前面我們已經用過來輸出Hello World,語法就是:

print(要輸出的內容)

輸入函數是 input(),功能是接收用戶輸入的內容,語法是:

input(輸出的內容)

舉例:接收用戶輸入的姓名,隨之打印歡迎用戶

n = input("請輸入姓名:")	#把輸入內容賦給n,用 n 接收一下
print("歡迎" + n + "!")	#打印n

上面章節也講到過,在Python里,“#” 表示注釋,“#”后面的東西不會被執行。代碼運行之后首先出現了“請輸入姓名:”,然后隨意輸入,比如輸入Michael Lee,執行結果:

成功接收用戶輸入的內容并打印出來。

6 變量

變量可以理解為一個名字,在Python中,變量是用于存儲數據值的標識符(名稱)。變量允許我們存儲和操作數據,而不必每次都直接引用數據本身。Python是一種動態類型的語言,這意味著變量的類型在運行時可以自動改變,取決于我們賦給它的值。

變量命名規則

  • 變量名必須是一個有效的標識符:這意味著它必須以字母(a-z, A-Z)或下劃線(_)開頭,后面可以跟任意數量的字母、數字或下劃線。
  • 變量名不能是Python的關鍵字(即Python保留字):例如,class, for, while, if等。
  • 變量名應該具有描述性:這樣代碼的可讀性會更好。
  • 變量名區分大小寫:例如,myVariable和myvariable是兩個不同的變量。
  • 避免使用內置函數或類的名稱作為變量名:這可能會導致意外的行為或錯誤。

7 數據類型

  • 整型(int):正整數、負整數和零,例如:123, -456, 0。
  • 浮點型(float):帶有小數點的數字,例如:1.23, -0.456。
  • 復數(complex):由實部和虛部組成的數,表示為a + bj,其中a和b是浮點數,j(或J)是虛數單位。例如:3+4j。
  • 字符串(str):一系列字符組成的文本,用單引號、雙引號或三引號括起來。例如:'hello',"world",'''Hello, world!'''。
  • 布爾值(bool):只有兩個值,True和False,用于表示邏輯條件。
  • 列表(list):有序的元素集合,用方括號[]括起來,元素之間用逗號分隔。列表中的元素可以是任何類型,并且同一個列表中可以有不同類型的元素。例如:[1, 2, 3, 'a', 'b']。
  • 元組(tuple):與列表類似,但是元組是不可變的,即創建后不能修改其元素。元組用圓括號()括起來。例如:(1, 2, 3)。
  • 字典(dict):無序的鍵值對集合,用花括號{}括起來,每個鍵值對用冒號:分隔,鍵值對之間用逗號,分隔。鍵通常是不可變的類型(如整數、浮點數、字符串或元組),而值可以是任何類型。例如:{'name': 'Alice', 'age': 30}。
  • 集合(set):無序且不包含重復元素的集合,用花括號{}或set()函數表示。集合用于去重或檢查某個元素是否存在于某個集合中。例如:{1, 2, 3}。
  • NoneType:None是NoneType類型的唯一值,表示空值或沒有值。它經常用于表示變量沒有設置值或函數沒有返回值。

8?類型轉換

在Python中,數據類型轉換是很常見的操作。Python提供了多種內置函數,用于在數據類型之間進行轉換。以下是一些常見的Python數據類型轉換的示例:

整數(int)與浮點數(float)之間的轉換:

  • 使用 int() 函數將浮點數轉換為整數(ps:注意這會導致小數部分被丟棄)。
num_float = 3.14
num_int = int(num_float)  # 結果為 3
  • ?使用 float() 函數將整數或字符串轉換為浮點數。
num_str = "123"
num_float = float(num_str)  # 結果為 123.0

字符串(str)與整數/浮點數之間的轉換

  • ?如前所述,使用 int() 和 float() 函數可以將字符串轉換為整數或浮點數,但前提是字符串表示的是一個有效的數字。
num_str = "123"
num_int = int(num_str)  # 結果為 123num_str_float = "3.14"
num_float = float(num_str_float)  # 結果為 3.14

?列表(list)與元組(tuple)之間的轉換

  • 使用 list() 函數可以將元組轉換為列表。
my_tuple = (1, 2, 3)
my_list = list(my_tuple)  # 結果為 [1, 2, 3]
  • ?使用 tuple() 函數可以將列表轉換為元組。
my_list = [1, 2, 3]
my_tuple = tuple(my_list)  # 結果為 (1, 2, 3)

?其他類型轉換:

  • ?使用 bool() 函數可以將其他數據類型轉換為布爾值(True 或 False)。
# 整數轉換為布爾值
num_int = 0
print(bool(num_int))  # False,因為0被視為Falsenum_int = 1
print(bool(num_int))  # True,因為非0整數被視為True# 字符串轉換為布爾值
empty_str = ""
print(bool(empty_str))  # False,因為空字符串被視為Falsenon_empty_str = "Hello"
print(bool(non_empty_str))  # True,因為非空字符串被視為True# 列表轉換為布爾值
empty_list = []
print(bool(empty_list))  # False,因為空列表被視為Falsenon_empty_list = [1, 2, 3]
print(bool(non_empty_list))  # True,因為非空列表被視為True# 字典轉換為布爾值
empty_dict = {}
print(bool(empty_dict))  # False,因為空字典被視為Falsenon_empty_dict = {"key": "value"}
print(bool(non_empty_dict))  # True,因為非空字典被視為True
  • 使用 set() 函數可以將列表或元組轉換為集合(set)。
# 列表轉換為集合
list_to_set = [1, 2, 2, 3, 4]
set_from_list = set(list_to_set)
print(set_from_list)  # {1, 2, 3, 4},集合中的元素唯一# 元組轉換為集合
tuple_to_set = (1, 2, 3, 3, 4)
set_from_tuple = set(tuple_to_set)
print(set_from_tuple)  # {1, 2, 3, 4},集合中的元素唯一
  • 使用 dict() 函數或花括號 {} 可以將鍵值對(通常是元組列表或另一個字典)轉換為字典。
# 使用dict()函數
dict_from_tuple_list = dict([(1, 'one'), (2, 'two'), (3, 'three')])
print(dict_from_tuple_list)  # {1: 'one', 2: 'two', 3: 'three'}# 使用花括號{}
dict_from_pairs = {1: 'one', 2: 'two', 3: 'three'}
print(dict_from_pairs)  # {1: 'one', 2: 'two', 3: 'three'}# 從另一個字典創建字典
another_dict = {'a': 1, 'b': 2}
dict_from_another_dict = dict(another_dict)
print(dict_from_another_dict)  # {'a': 1, 'b': 2}
  • 使用 complex() 函數可以將兩個數字轉換為復數。
# 實數部分和虛數部分
real_part = 3
imag_part = 4# 轉換為復數
complex_num = complex(real_part, imag_part)
print(complex_num)  # (3+4j)# 只有一個參數時,它被視為復數的實數部分,虛數部分為0
complex_num_only_real = complex(real_part)
print(complex_num_only_real)  # (3+0j)

這些示例展示了如何使用Python的內置函數來執行不同類型之間的轉換。?

9 表達式

在Python中,表達式是由運算符和操作數組成的代碼片段,它會被Python解釋器計算并產生一個值。表達式可以很簡單,也可以很復雜,它們可以包含變量、常量、函數調用、運算符等。

以下是一些Python表達式的例子:

  • 簡單的算術表達式:
2 + 3  # 結果為 5
5 - 2  # 結果為 3
10 * 2  # 結果為 20
10 / 2  # 結果為 5.0(在Python 3中,整數除法返回浮點數)
10 // 3  # 結果為 3(整數除法,只取整數部分)
10 % 3  # 結果為 1(取余數)
  • 字符串表達式:
"Hello, " + "World!"  # 結果為 "Hello, World!"
"Python is " + str(3.14) + "!"  # 結果為 "Python is 3.14!"
  • 邏輯表達式:
True and False  # 結果為 False
True or False   # 結果為 True
not True        # 結果為 False
  • 比較表達式:
5 > 3  # 結果為 True
10 < 5  # 結果為 False
2 == 2  # 結果為 True
3 != 2  # 結果為 True

10 運算符

Python 中的運算符用于執行各種算術運算、比較運算、邏輯運算、位運算、賦值運算以及身份和成員關系運算。以下是 Python 比較常見基礎的運算符及其用法:

1. 算術運算符

# 算術運算符
a = 5
b = 3
print(a + b)       # +:加法                  結果:8 
print(a - b)       # -:減法                  結果:2
print(a * b)       # *:乘法                  結果:15
print(a / b)       # /:除法(結果總是浮點數) 結果:1.6666666666666667
print(a // b)      # //:整除(取整數部分)    結果:1
print(a % b)       # %:取模(求余數)         結果:2
print(a ** b)      # **:乘方(冪運算)        結果:125

2. 比較運算符

# 比較運算符
a = 5
b = 3
print(a == b)       # ==:等于      結果:False
print(a != b)       # !=:不等于    結果:True
print(a > b)        # >:大于       結果:True
print(a < b)        # <:小于       結果:False
print(a >= b)       # >=:大于等于  結果:True
print(a <= b)       # <=:小于等于  結果:False

3. 邏輯運算符

# 邏輯運算符
print(True and False)  # and:邏輯與 結果:False
print(True or False)   # or:邏輯或  結果:True
print(not True)        # not:邏輯非 結果:False

以上即是博主認為Python比較基礎的一下知識,在開始編寫Python前務必掌握,如有遺留歡迎補充,抱拳 !!!

ps:博主也是個Python萌新,后續會持續更新Python學習內容,如感興趣跟著博主從零開始學習關注點一下吧~

有什么問題都可以評論區留言,看見都會回復的!!!

如果你覺得本篇文章對你有所幫助的,多多支持!!!

點贊收藏評論,抱拳了!!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/40696.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/40696.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/40696.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Android 工具腳本

工具腳本 Shell腳本 獲取Git分支名稱 def gitBranch() {def branch ""def proc "git rev-parse --abbrev-ref HEAD".execute()proc.in.eachLine { line -> branch line }proc.err.eachLine { line -> println line }proc.waitFor()branch }

生信算法9 - 正則表達式匹配氨基酸序列、核型和字符串

1. 使用正則表達式匹配指定的氨基酸序列 import re# 氨基酸序列 seq VSVLTMFRYAGWLDRLYMLVGTQLAAIIHGVALPLMMLI# 正則表達式匹配 match re.search(r[A|G]W, seq)# 打印match及匹配到開始位置和結束位置 print(match) # <re.Match object; span(10, 12), matchGW> prin…

DP學習——觀察者模式

學而時習之&#xff0c;溫故而知新。 2個角色 分為啥主題和觀察者角色。 我覺得主題就是干活的&#xff0c;打工仔&#xff0c;為觀察者干活。 一對多。一個主題&#xff0c;多個觀察者——就像一個開發人員對多個項目經理——項目經理拿小皮鞭抽呀抽呀&#xff0c;受不了。 …

代碼隨想錄算法訓練營第70天圖論9[1]

代碼隨想錄算法訓練營第70天:圖論9 ? 拓撲排序精講 卡碼網&#xff1a;117. 軟件構建(opens new window) 題目描述&#xff1a; 某個大型軟件項目的構建系統擁有 N 個文件&#xff0c;文件編號從 0 到 N - 1&#xff0c;在這些文件中&#xff0c;某些文件依賴于其他文件的…

5款軟件讓電腦更方便,更快,更好看

? 你有沒有想過&#xff0c;有些軟件能讓你的電腦用起來更方便&#xff0c;更快&#xff0c;更好看&#xff1f; 1. 屏幕動畫創作——Screen To Gif ? Screen To Gif是一款功能強大的屏幕錄制軟件&#xff0c;專注于將屏幕上的動態內容轉換為高質量的GIF動畫。它不僅支持自…

《ClipCap》論文筆記(下)

原文出處 [2111.09734] ClipCap: CLIP Prefix for Image Captioning (arxiv.org) 原文翻譯 接上篇 《ClipCap》論文筆記&#xff08;上&#xff09;-CSDN博客 4. Results Datasets.我們使用 COCO-captions [7,22]、nocaps [1] 和 Conceptual Captions [33] 數據集。我們根…

自動化設備上位機設計 一

目錄 一 設計原型 二 后臺代碼 一 設計原型 二 后臺代碼 namespace 自動化上位機設計 {public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){}} }namespace 自動化上位機設計 {partial class Fo…

Pyqt5中如何讓label里面的圖片進行更換,避免出現黑圖

在Pyqt5的界面開發過程中&#xff0c;發現一個label的圖片怎么都添加不上&#xff0c;而且出現黑色&#xff0c;主要原因就是在進行顯示的時候需要加一行清除的代碼&#xff1a; label.clear()如果不加這行代碼&#xff0c;當里面的圖片發生變化時&#xff0c;顯示出來的就是黑…

miniprogram-to-uniapp-微信小程序轉換成uniapp項目

文章目錄 參考:miniprogram-to-uniapp使用指南第一步第二步第三步第四步【miniprogram-to-uniapp】轉換微信小程序”項目為uni-app項目(新版本工具已經支持各種小程序轉換) 參考: 小程序技能樹 uni-app基礎知識總結 miniprogram-to-uniapp使用指南 第一步 win + R 輸入…

Openwrt路由器部分ipv6公網地址無法訪問的問題

路由器是Openwrt&#xff0c;終端訪問ipv6地址經常有些能訪問&#xff0c;有些不能訪問&#xff0c;一開始以為是運營商問題&#xff0c;后面ssh到openwrt發現所有訪問都正常。 查閱資料后才知道是MTU設置問題&#xff0c;Openwrt 默認MTU是1492&#xff0c;使用IPV6應減少60個…

微信小程序遮罩層顯示

效果展示&#xff1a; wxml頁面&#xff1a; <view classmodal-mask wx:if{{showModal}}><view class"modal-container"><view classmodal-content></view><view classmodal-footer bindtap"closeImage">//這個/images/ind…

Java 基礎查漏補缺

1.深入解讀&#xff1a;JDK與JRE的區別 JDK提供了完整的Java開發工具和資源&#xff0c;包括編譯器、調試器和其他開發工具&#xff0c;滿足開發人員的各種需求。 JRE則相對更為基礎&#xff0c;它只提供了Java程序運行所需的環境&#xff0c;包含了Java虛擬機&#xff08;JVM&…

數字類型<整數、復數>

Python 中&#xff0c;數字類型 Number&#xff0c; 包括整數 int、浮點 float 數和復數 complex 三個子類型。 用來表示程序中不同的數字類型的數據。 整數 整數類型&#xff1a;用來表示整數數值&#xff0c;即沒有小數部分的數值&#xff0c;在 Python 中&#xff0c;沒有…

Nettyの網絡聊天室擴展序列化算法

1、網絡聊天室綜合案例 客戶端初始代碼&#xff1a; Slf4j public class ChatClient {public static void main(String[] args) {NioEventLoopGroup group new NioEventLoopGroup();LoggingHandler LOGGING_HANDLER new LoggingHandler(LogLevel.DEBUG);MessageCodecSharabl…

使用c++函數式編程實現Qt信號槽機制

問題背景 在下面的代碼中&#xff0c;Input輸入器 輸入數據&#xff0c;希望A和B 接收數據。但使用的賦值&#xff0c;導致in.a和a只是拷貝數據&#xff0c;而不是同一個對象&#xff0c;使得數據不同步。 #include <iostream> struct A {int age 32; }; struct B {int …

searchForm自適應布局 + 按鈕插槽

收起 展開 代碼&#xff1a; useResizeObserverHooks.js import { useEffect, useLayoutEffect } from "react";export const useResizeObserver (containerDom, domClass, callback) > {useLayoutEffect(() > {let resizeObserver null;let dom null;if …

Qt Json詳細介紹

一.概念介紹 JSON&#xff08;JavaScript Object Notation&#xff09;是一種輕量級的數據交換格式&#xff0c;常用于前后端數據傳輸和存儲。它具有以下特點&#xff1a; 易讀性&#xff1a;JSON 使用人類可讀的文本格式表示數據&#xff0c;采用鍵值對的方式組織數據&#x…

eth0設備繁忙

當您遇到 ifconfig eth0 hw ether 20:24:07:04:18:00 命令執行后顯示 ifconfig: SIOCSIFHWADDR: Device or resource busy 錯誤時&#xff0c;這意味著您嘗試更改的網絡設備&#xff08;在這個例子中是 eth0&#xff09;目前正被占用&#xff0c;無法進行硬件地址的更改。 為了…

Map Set(Java篇詳解)

&#x1f341; 個人主頁&#xff1a;愛編程的Tom&#x1f4ab; 本篇博文收錄專欄&#xff1a;Java專欄&#x1f449; 目前其它專欄&#xff1a;c系列小游戲 c語言系列--萬物的開始_ 等 &#x1f389; 歡迎 &#x1f44d;點贊?評論?收藏&#x1f496;三連支持…

【每日一練】python列表

1、輸入一個整數列表&#xff0c;將列表中的元素按照逆序輸出。 list1[5,4,5,6] list1.reverse() print(list1)[6, 5, 4, 5]2、輸入一個字符串列表&#xff0c;輸出其中長度大于等于5的字符串&#xff0c;并且將它們轉換為大寫形式。 list1[hello,lol,ak47,aliang] for i in …