Python 語句的表達(dá)式和縮進(jìn)
一、Python 中的語句
1.1什么是聲明?
Python 中的語句是 Python 解釋器可以讀取和執(zhí)行的邏輯指令。在 Python 中,它可以是表達(dá)式或賦值語句。
賦值語句是 Python 的基礎(chǔ)。它定義了表達(dá)式創(chuàng)建和保存對象的方式。
1.2什么是表達(dá)式
表達(dá)式是一種類型的 Python 語句,它包含數(shù)字、字符串、對象和運(yùn)算符的邏輯序列。值本身是一個有效的表達(dá)式,變量也是如此。
使用表達(dá)式,我們可以執(zhí)行加法、減法、連接等操作。它還可以調(diào)用評估結(jié)果的函數(shù)。
例子:
# 使用算術(shù)表達(dá)式 >>> ((10 + 2) * 100 / 5 - 200) 40.0 # 在表達(dá)式中使用函數(shù) >>> pow(2, 10) 1024 # 在表達(dá)式中使用 eval >>> eval( "2.5+2.5" ) 5.0
1.3簡單的賦值語句
在一個簡單的賦值中,我們創(chuàng)建新變量、賦值和更改值。該語句提供了一個表達(dá)式和一個變量名作為標(biāo)簽來保存表達(dá)式的值。
# Syntax variable = expression # LHS <=> RHS
現(xiàn)在讓我們仔細(xì)看看 Python 中的三種賦值語句,看看到底發(fā)生了什么。
案例 1:右側(cè) (RHS) 只是一個基于值的表達(dá)式。
讓我們考慮一下 Python 中最基本的賦值形式。
>>> test = "Learn Python"
Python 將在內(nèi)存中創(chuàng)建一個字符串“Learn Python”,并為其分配名稱“test”。您可以使用稱為id()的內(nèi)置函數(shù)來確認(rèn)內(nèi)存地址。
>>> test = "Learn Python" >>> id(test) 6589040
該數(shù)字是數(shù)據(jù)在內(nèi)存中所在位置的地址?,F(xiàn)在,這里有一些你應(yīng)該知道的有趣點(diǎn)。
- 如果您創(chuàng)建另一個具有相同值的字符串,Python 將創(chuàng)建一個新對象并將其分配到內(nèi)存中的不同位置。所以這條規(guī)則適用于大多數(shù)情況。
>>> test1 = "Learn Python" >>> id(test1) 6589104 >>> test2 = "Learn Python" >>> id(test2) 6589488
- 但是,Python 在以下兩種場景中也會分配相同的內(nèi)存地址。
字符串沒有空格并且包含少于 20 個字符。
如果整數(shù)范圍在 -5 到 +255 之間。
這個概念被稱為Interning。Python 這樣做是為了節(jié)省內(nèi)存。
案例 2:右側(cè) (RHS) 是當(dāng)前的 Python 變量。
讓我們討論下一種類型的賦值語句,其中 RHS 是當(dāng)前 Python 變量。
>>> another_test = test
上面的語句不會在內(nèi)存中觸發(fā)任何新的分配。這兩個變量都指向相同的內(nèi)存地址。這就像為現(xiàn)有對象創(chuàng)建別名。讓我們使用id()函數(shù)來驗證這一點(diǎn)。
>>> test = "Learn Python" >>> id(test) 6589424 >>> another_test = test >>> id(another_test) 6589424
案例 3:右側(cè) (RHS) 是一個操作。
在這種類型的語句中,結(jié)果將取決于操作的結(jié)果。讓我們用下面的例子來分析它。
>>> test = 2 * 5 / 10 >>> print(test) 1.0 >>> type(test) <class 'float'>
在上面的例子中,賦值會導(dǎo)致創(chuàng)建一個“float”變量。
>>> test = 2 * 5 >>> print(test) 10 >>> type(test) <class 'int'>
在這個例子中,賦值將導(dǎo)致創(chuàng)建一個 “int”變量。
1.4增強(qiáng)賦值語句
我們可以在賦值中組合算術(shù)運(yùn)算符以形成擴(kuò)充賦值語句。
查看以下示例以了解增強(qiáng)賦值語句。
x += y
上面的語句是下面簡單語句的簡寫。
x = x + y
下一個是一個更清晰的例子,我們向元組添加新元素。
>>> my_tuple = (10, 20, 30) >>> my_tuple += (40, 50,) >>> print(my_tuple) (10, 20, 30, 40, 50)
下一個示例是使用元音列表。它正在演示將缺失的元音添加到列表中。
>>> list_vowels = ['a','e','i'] >>> list_vowels += ['o', 'u',] >>> print(list_vowels) ['a', 'e', 'i', 'o', 'u']
二、Python 中的多行語句
通常,每個 Python 語句都以換行符結(jié)尾。但是,我們可以使用行繼續(xù)符 () 將其擴(kuò)展到多行。
Python 為我們提供了兩種在程序中啟用多行語句的方法。
2.1顯式續(xù)行
當(dāng)您立即使用行繼續(xù)符 () 將語句拆分為多行時。
例子:
# 使用多行語句初始化列表 >>> my_list = [1, \ ... 2, 3\ ... ,4,5 \ ... ] >>> print(my_list) [1, 2, 3, 4, 5] # 使用多行語句計算表達(dá)式 >>> eval ( \ ... " 2.5 \ ... + \ ... 3.5") 6.0
2.2隱式續(xù)行
隱式續(xù)行是指使用括號 ( )、方括號 [ ] 和大括號 { } 中的任何一個拆分語句 。您需要使用提到的構(gòu)造將目標(biāo)語句括起來。
例子:
>>> result = (10 + 100 ... * 5 - 5 ... / 100 + 10 ... ) >>> print(result) 519.95
另一個例子:
>>> subjects = [ ... 'Maths', ... 'English', ... 'Science' ... ] >>> print(subjects) ['Maths', 'English', 'Science'] >>> type(subjects) <class 'list'>
三、Python 縮進(jìn)
許多高級編程語言(如 C、C++、C#)都使用大括號 { } 來標(biāo)記代碼塊。Python 通過縮進(jìn)來實現(xiàn)。
表示函數(shù)體或循環(huán)體的代碼塊以縮進(jìn)開始,以第一個未縮進(jìn)的行結(jié)束。
3.1Python中的縮進(jìn)有多少個空格?
Python 樣式指南 (PEP 8) 規(guī)定縮進(jìn)大小應(yīng)保持為 4。然而,谷歌有其獨(dú)特的風(fēng)格指南,限制縮進(jìn)最多兩個空格。所以你也可以選擇不同的風(fēng)格,但我們建議遵循 PEP8。
3.2為什么縮進(jìn)很重要?
大多數(shù)編程語言都提供縮進(jìn)以實現(xiàn)更好的代碼格式,并且不強(qiáng)制使用縮進(jìn)。
但是,在 Python 中,必須遵守縮進(jìn)規(guī)則。通常,我們將代碼塊中的每一行縮進(jìn)四個空格(或相同的數(shù)量)。
在前幾節(jié)的示例中,您可能已經(jīng)看到我們編寫了沒有縮進(jìn)的簡單表達(dá)式語句。
然而,為了創(chuàng)建復(fù)合語句,縮進(jìn)將是非常必要的。
例子:
def demo_routine(num):
print('I am a demo function')
if num % 2 == 0:
return True
else:
return False
num = int(input('Enter a number:'))
if demo_routine(num) is True:
print(num, 'is an even number')
else:
print(num, 'is an odd number')
現(xiàn)在,還可以看到不想要的縮進(jìn)導(dǎo)致錯誤的場景。因此,讓我們嘗試縮進(jìn)一個簡單的表達(dá)式語句。
>>> 6*5-10 File "<stdin>", line 1 6*5-10 ^ IndentationError: unexpected indent
到此這篇關(guān)于Python 語句的表達(dá)式和縮進(jìn)的文章就介紹到這了,更多相關(guān)Python 表達(dá)式和縮進(jìn)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
計算機(jī)二級python學(xué)習(xí)教程(2) python語言基本語法元素
這篇文章主要為大家詳細(xì)介紹了計算機(jī)二級python學(xué)習(xí)教程的第2篇,Python語言基本語法元素,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-05-05
使用python將excel數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫過程詳解
這篇文章主要介紹了使用python將excel數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-08-08
Python使用py2neo操作圖數(shù)據(jù)庫neo4j的方法詳解
這篇文章主要介紹了Python使用py2neo操作圖數(shù)據(jù)庫neo4j的方法,結(jié)合實例形式詳細(xì)分析了Python使用py2neo操作圖數(shù)據(jù)庫neo4j的具體步驟、原理、相關(guān)使用技巧與操作注意事項,需要的朋友可以參考下2020-01-01
TensorFlow實現(xiàn)MLP多層感知機(jī)模型
這篇文章主要為大家詳細(xì)介紹了TensorFlow實現(xiàn)MLP多層感知機(jī)模型,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-03-03

