溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python語(yǔ)句的表達(dá)式和縮進(jìn)怎么用

發(fā)布時(shí)間:2021-09-24 16:32:32 來(lái)源:億速云 閱讀:117 作者:柒染 欄目:開(kāi)發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)Python語(yǔ)句的表達(dá)式和縮進(jìn)怎么用,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

一、Python 中的語(yǔ)句

1.1什么是聲明?

Python 中的語(yǔ)句是 Python 解釋器可以讀取和執(zhí)行的邏輯指令。在 Python 中,它可以是表達(dá)式或賦值語(yǔ)句。

賦值語(yǔ)句是 Python 的基礎(chǔ)。它定義了表達(dá)式創(chuàng)建和保存對(duì)象的方式。

1.2什么是表達(dá)式

表達(dá)式是一種類型的 Python 語(yǔ)句,它包含數(shù)字、字符串、對(duì)象和運(yùn)算符的邏輯序列。值本身是一個(gè)有效的表達(dá)式,變量也是如此。

使用表達(dá)式,我們可以執(zhí)行加法、減法、連接等操作。它還可以調(diào)用評(píng)估結(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簡(jiǎn)單的賦值語(yǔ)句

在一個(gè)簡(jiǎn)單的賦值中,我們創(chuàng)建新變量、賦值和更改值。該語(yǔ)句提供了一個(gè)表達(dá)式和一個(gè)變量名作為標(biāo)簽來(lái)保存表達(dá)式的值。

# Syntax
variable = expression
# LHS <=> RHS

現(xiàn)在讓我們仔細(xì)看看 Python 中的三種賦值語(yǔ)句,看看到底發(fā)生了什么。

案例 1:右側(cè) (RHS) 只是一個(gè)基于值的表達(dá)式。

讓我們考慮一下 Python 中最基本的賦值形式。

>>> test = "Learn Python"

Python 將在內(nèi)存中創(chuàng)建一個(gè)字符串“Learn Python”,并為其分配名稱“test”。您可以使用稱為id()的內(nèi)置函數(shù)來(lái)確認(rèn)內(nèi)存地址。

>>> test = "Learn Python"
>>> id(test)
6589040

該數(shù)字是數(shù)據(jù)在內(nèi)存中所在位置的地址?,F(xiàn)在,這里有一些你應(yīng)該知道的有趣點(diǎn)。

  • 如果您創(chuàng)建另一個(gè)具有相同值的字符串,Python 將創(chuàng)建一個(gè)新對(duì)象并將其分配到內(nèi)存中的不同位置。所以這條規(guī)則適用于大多數(shù)情況。

>>> test1 = "Learn Python"
>>> id(test1)
6589104
>>> test2 = "Learn Python"
>>> id(test2)
6589488
  • 但是,Python 在以下兩種場(chǎng)景中也會(huì)分配相同的內(nèi)存地址。

字符串沒(méi)有空格并且包含少于 20 個(gè)字符。
如果整數(shù)范圍在 -5 到 +255 之間。
這個(gè)概念被稱為Interning。Python 這樣做是為了節(jié)省內(nèi)存。

案例 2:右側(cè) (RHS) 是當(dāng)前的 Python 變量。

讓我們討論下一種類型的賦值語(yǔ)句,其中 RHS 是當(dāng)前 Python 變量。

>>> another_test = test

上面的語(yǔ)句不會(huì)在內(nèi)存中觸發(fā)任何新的分配。這兩個(gè)變量都指向相同的內(nèi)存地址。這就像為現(xiàn)有對(duì)象創(chuàng)建別名。讓我們使用id()函數(shù)來(lái)驗(yàn)證這一點(diǎn)。

>>> test = "Learn Python"
>>> id(test)
6589424
>>> another_test = test
>>> id(another_test)
6589424

案例 3:右側(cè) (RHS) 是一個(gè)操作。

在這種類型的語(yǔ)句中,結(jié)果將取決于操作的結(jié)果。讓我們用下面的例子來(lái)分析它。

>>> test = 2 * 5 / 10
>>> print(test)
1.0
>>> type(test)
<class 'float'>

在上面的例子中,賦值會(huì)導(dǎo)致創(chuàng)建一個(gè)“float”變量。

>>> test = 2 * 5
>>> print(test)
10
>>> type(test)
<class 'int'>

在這個(gè)例子中,賦值將導(dǎo)致創(chuàng)建一個(gè) “int”變量。

1.4增強(qiáng)賦值語(yǔ)句

我們可以在賦值中組合算術(shù)運(yùn)算符以形成擴(kuò)充賦值語(yǔ)句。

查看以下示例以了解增強(qiáng)賦值語(yǔ)句。

x += y

上面的語(yǔ)句是下面簡(jiǎn)單語(yǔ)句的簡(jiǎn)寫(xiě)。

x = x + y

下一個(gè)是一個(gè)更清晰的例子,我們向元組添加新元素。

>>> my_tuple = (10, 20, 30)
>>> my_tuple += (40, 50,)
>>> print(my_tuple)
(10, 20, 30, 40, 50)

下一個(gè)示例是使用元音列表。它正在演示將缺失的元音添加到列表中。

>>> list_vowels = ['a','e','i']
>>> list_vowels += ['o', 'u',]
>>> print(list_vowels)
['a', 'e', 'i', 'o', 'u']

二、Python 中的多行語(yǔ)句

通常,每個(gè) Python 語(yǔ)句都以換行符結(jié)尾。但是,我們可以使用行繼續(xù)符 () 將其擴(kuò)展到多行。

Python 為我們提供了兩種在程序中啟用多行語(yǔ)句的方法。

2.1顯式續(xù)行

當(dāng)您立即使用行繼續(xù)符 () 將語(yǔ)句拆分為多行時(shí)。

例子:

# 使用多行語(yǔ)句初始化列表
>>> my_list = [1, \
... 2, 3\
... ,4,5 \
... ]
>>> print(my_list)
[1, 2, 3, 4, 5]

# 使用多行語(yǔ)句計(jì)算表達(dá)式
>>> eval ( \
... " 2.5 \
... + \
... 3.5")
6.0

2.2隱式續(xù)行

隱式續(xù)行是指使用括號(hào) ( )、方括號(hào) [ ] 和大括號(hào) { } 中的任何一個(gè)拆分語(yǔ)句 。您需要使用提到的構(gòu)造將目標(biāo)語(yǔ)句括起來(lái)。

例子:

>>> result = (10 + 100
... * 5 - 5
... / 100 + 10
... )
>>> print(result)
519.95

另一個(gè)例子:

>>> subjects = [
... 'Maths',
... 'English',
... 'Science'
... ]
>>> print(subjects)
['Maths', 'English', 'Science']
>>> type(subjects)
<class 'list'>

三、Python 縮進(jìn)

許多高級(jí)編程語(yǔ)言(如 C、C++、C#)都使用大括號(hào) { } 來(lái)標(biāo)記代碼塊。Python 通過(guò)縮進(jìn)來(lái)實(shí)現(xiàn)。

表示函數(shù)體或循環(huán)體的代碼塊以縮進(jìn)開(kāi)始,以第一個(gè)未縮進(jìn)的行結(jié)束。

3.1Python中的縮進(jìn)有多少個(gè)空格?

Python 樣式指南 (PEP 8) 規(guī)定縮進(jìn)大小應(yīng)保持為 4。然而,谷歌有其獨(dú)特的風(fēng)格指南,限制縮進(jìn)最多兩個(gè)空格。所以你也可以選擇不同的風(fēng)格,但我們建議遵循 PEP8。

3.2為什么縮進(jìn)很重要?

大多數(shù)編程語(yǔ)言都提供縮進(jìn)以實(shí)現(xiàn)更好的代碼格式,并且不強(qiáng)制使用縮進(jìn)。

但是,在 Python 中,必須遵守縮進(jìn)規(guī)則。通常,我們將代碼塊中的每一行縮進(jìn)四個(gè)空格(或相同的數(shù)量)。

在前幾節(jié)的示例中,您可能已經(jīng)看到我們編寫(xiě)了沒(méi)有縮進(jìn)的簡(jiǎn)單表達(dá)式語(yǔ)句。

然而,為了創(chuàng)建復(fù)合語(yǔ)句,縮進(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)致錯(cuò)誤的場(chǎng)景。因此,讓我們嘗試縮進(jìn)一個(gè)簡(jiǎn)單的表達(dá)式語(yǔ)句。

>>> 6*5-10
 File "<stdin>", line 1
 6*5-10
 ^
IndentationError: unexpected indent

關(guān)于Python語(yǔ)句的表達(dá)式和縮進(jìn)怎么用就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI