91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python字符串及基本操作

發布時間:2020-08-26 15:34:21 來源:億速云 閱讀:148 作者:Leah 欄目:編程語言

這篇文章運用簡單易懂的例子給大家介紹Python字符串及基本操作,代碼非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

字符串的意思就是“一串字符”,比如“Hello,Charlie”是一個字符串,“How are you?”也是一個字符串。

Python 要求字符串必須使用引號括起來,使用單引號也行,使用雙引號也行,只要兩邊的引號能配對即可。

Python字符串和轉義字符

字符串的內容幾乎可以包含任何字符,英文字符也行,中文字符也行。

Python 3.x 對中文字符支持較好,但 Python 2.x 則要求在源程序中增加“#coding:utf-8”才能支持中文字符。

字符串既可用單引號括起來,也可用雙引號括起來,它們沒有任何區別。例如如下程序:

str1 = 'Charlie'
str2 = "php中文網"
print(str1)
print(str2)

但需要說明的是,Python 有時候沒有我們期望的那么聰明。如果字符串內容本身包含了單引號或雙引號,此時就需要進行特殊處理:

使用不同的引號將字符串括起來。

對引號進行轉義。

先看第一種處理方式。假如字符串內容中包含了單引號,則可以使用雙引號將字符串括起來。例如:

str3 = 'I'm a coder'

由于上面字符串中包含了單引號,此時 Python 會將字符串中的單引號與第一個單引號配對,這樣就會把 'I' 當成字符串,而后面的 m a coder' 就變成了多余的內容,從而導致語法錯誤。

為了避免這種問題,可以將上面代碼改為如下形式:

str3 = "I'm a coder"

上面代碼使用雙引號將字符串括起來,此時 Python 就會把字符串中的單引號當成字符串內容,而不是和字符串開始的引號配對。

假如字符串內容本身包含雙引號,則可使用單引號將字有串括起來,例如如下代碼:

str4 = '"Spring is here,let us jam!", said woodchuck.'

接下來看第二種處理方式:使用轉義字符。Python 允許使用反斜線(\)將字符串中的特殊字符進行轉義。假如字符串既包含單引號,又包含雙引號,此時必須使用轉義字符,例如如下代碼:

str5 = '"we are scared,Let\'s hide in the shade",says the bird'

拼接字符串

如果直接將兩個字符串緊挨著寫在一起,Python 就會自動拼接它們,例如如下代碼:

s1 = "Hello,"'Charlie'
print(s1)

上面代碼將會輸出:

Hello,Charlie

上面這種寫法只是書寫字符串的一種特殊方法,并不能真正用于拼接字符串。Python 使用加號(+)作為字符串的拼接運算符,例如如下代碼:

s2 = "Python "
s3 = "iS Funny"
#使用+拼接字符串
s4 = s2 + s3
print(s4)

repr 和字符串

有時候,我們需要將字符串與數值進行拼接,而 Python 不允許直接拼接數值和字符串,程序必須先將數值轉換成字符串。

為了將數值轉換成字符串,可以使用 str() 或 repr() 函數,例如如下代碼:

s1 = "這是數字: "
p = 99.8
#字符串直接拼接數值,程序報錯
print(s1 + p)
#使用str()將數值轉換成字符串
print(s1 + str(p))
#使用repr()將數值轉換成字符串
print(s1 + repr(p))

上面程序中直接拼接字符串和數值,程序會報錯。

str() 和 repr() 函數都可以將數值轉換成字符串,其中 str 本身是 Python 內置的類型(和 int、float 一樣),而 repr() 則只是一個函數。此外,repr 還有一個功能,它會以 Python 表達式的形式來表示值。對比如下代碼:

st = "I will play my fife"
print (st)
print(repr(st))

上面代碼中 st 本身就是一個字符串,但程序依然使用了 repr() 對字符串進行轉換。運行上面程序,可以看到如下輸出結果:

I will play my fife
'I will play my fife'

通過上面的輸出結果可以看出,如果直接使用 print() 函數輸出字符串,將只能看到字符串的內容,沒有引號;但如果先使用 repr() 函數對字符串進行處理,然后再使用 print() 執行輸出,將可以看到帶引號的字符串,這就是字符串的 Python 的表達式形式。

在交互式解釋器中輸入一個主量或表達式時,Python 會自動使用 repr() 函數處理該變量或表達式。

使用 input 和 raw_input 獲取用戶輸入

input() 函數用于向用戶生成一條提示,然后獲取用戶輸入的內容。由于 input() 函數總會將用戶輸入的內容放入字符串中,因此用戶可以輸入任何內容,input() 函數總是返回一個字符串。

例如如下程序:

msg = input("請輸入你的值:")
print (type(msg))
print(msg)

第一次運行該程序,我們輸入一個整數,運行過程如下:

請輸入你的值:2
<class 'str'>
2

第二次運行該程序,我們輸入一個浮點數,運行過程如下:

請輸入你的值: 1.2
<class 'str'>
1.2

第三次運行該程序,我們輸入一個字符串,運行過程如下:

請輸入你的值:Hello
<class 'str'>
Hello

從上面的運行過程可以看出,無論輸入哪種內容,始終可以看到 input() 函數返回字符串,程序總會將用戶輸入的內容轉換成字符串。

Python長字符串

前面介紹 Python 多行注釋時提到使用三個引號(單引號、雙引號都行)來包含多行注釋內容,其實這是長字符串寫法,只是由于在長字符串中可以放置任何內容,包括放置單引號、雙引號都可以,如果所定義的長字符串沒有賦值給任何變量,那么這個字符串就相當于被解釋器忽略了,也就相當于注釋掉了。

實際上,使用三個引號括起來的長字符串完全可以賦值給變量,例如如下程序:

s = '''"Let's go fishing", said Mary.
"OK, Let's go", said her brother.
they walked to a lake'''
print(s)

上面程序使用三個引號定義了長字符串,該長字符串中既可包含單引號,也可包含雙引號。

當程序中有大段文本內容要定義成字符串時,優先推薦使用長字符串形式,因為這種形式非常強大,可以讓字符串中包含任何內容,既可包含單引號,也可包含雙引號。

此外,Python 還允許使用轉義字符(\)對換行符進行轉義,轉義之后的換行符不會“中斷”字符串。例如如下代碼:

s2 = 'The quick brown fox \
jumps over the lazy dog'
print(s2)

上面 s2 字符串的內容較長,故程序使用了轉義字符(\)對內容進行了轉義,這樣就可以把一個字符串寫成兩行。

需要說明的是,Python 不是格式自由的語言,因此 Python 程序的換行、縮進都有其規定的語法。所以,Python 的表達式不允許隨便換行。如果程序需要對 Python 表達式換行,同樣需要使用轉義字符(\)進行轉義,代碼如下:

num = 20 + 3 / 4 + \
    2 * 3
print(num)

上面程序中有一個表達式,為了對該表達式換行,程序需要使用轉義字符。

Python原始字符串

由于字符串中的反斜線都有特殊的作用,因此當字符串中包含反斜線時,就需要對其進行轉義。

比如寫一條 Windows 的路徑 G:\publish\codes\02\2.4,如果在 Python 程序中直接這樣寫肯定是不行的,需要寫成 G:\\publish\\codes\\02\\2.4,這很煩人,此時可借助于原始字符串來解決這個問題。

原始字符串以“r”開頭,原始字符串不會把反斜線當成特殊字符。因此,上面的 Windows 路徑可直接寫成 r'G:\publish\codes\02\2.4'。

關于原始字符串的用法看如下程序:

s1 = r'G:\publish\codes\02\2.4'
print(s1)

如果原始字符串中包含引號,程序同樣需要對引號進行轉義(否則 Python 同樣無法對字符串的引號精確配對),但此時用于轉義的反斜線會變成字符串的一部分。

例如如下代碼:

# 原始字符串包含的引號,同樣需要轉義
s2 = r'"Let\'s go", said Charlie'
print(s2)

上面代碼會生成如下輸出結果:

"Let\'s go", said Charlie

關于Python字符串及基本操作就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

遂平县| 新昌县| 井陉县| 崇仁县| 堆龙德庆县| 宜兴市| 曲麻莱县| 揭阳市| 宁津县| 常州市| 甘德县| 南康市| 长治县| 神农架林区| 芮城县| 陇川县| 连山| 孝昌县| 开阳县| 吉林省| 兰溪市| 浦北县| 札达县| 通海县| 南投县| 平顺县| 五峰| 左贡县| 武胜县| 改则县| 赫章县| 丽江市| 临沂市| 南通市| 康马县| 沙雅县| 武汉市| 高雄市| 广水市| 洛川县| 呼伦贝尔市|