摘要:和字符串相關(guān)的常用操作泊學(xué)視頻學(xué)習(xí)泊學(xué)閱讀文檔在中,最常用的一類數(shù)據(jù)類型,莫過于字符串了。在接下來的兩小節(jié)內(nèi)容里,我們就來分享和字符串相關(guān)的各種最常用的操作。以上,就是這一節(jié)的內(nèi)容,我們了解了字符串的創(chuàng)建常用操作以及獲取幫助的方式。
如果你正在找一個輕松愉快,但又緊湊高效的Python視頻,Python 101這個系列就是專門為你設(shè)計的。我們會以一個開發(fā)者理解編程語言的視角,向大家完整介紹Python語言本身、Python標(biāo)準(zhǔn)庫、如何使用Python編寫常用的代碼片段、以及如何管理和發(fā)布你的Python代碼。現(xiàn)如今,Python已經(jīng)成為了AI領(lǐng)域最炙手可熱的編程語言,無論你手頭的工作是否會用到Python,這絕對都是值得投資的一項編程技能。Don"t hesitate, let"s go.
和字符串相關(guān)的常用操作泊學(xué)4K視頻學(xué)習(xí)
泊學(xué)閱讀文檔
在Python中,最常用的一類數(shù)據(jù)類型,莫過于字符串了。在接下來的兩小節(jié)內(nèi)容里,我們就來分享和字符串相關(guān)的各種最常用的操作。
如何創(chuàng)建一個字符串我們先來看如何創(chuàng)建字符串。和其他弱若類型腳本語言一樣,我們可以用單引號或雙引號創(chuàng)建字符串:
stringInDoubleQuotes = "Hello Python!" stringInSingleQuotes = "Hello Python!"
或者,如果字符串的內(nèi)容需要跨過多行,還可以使用“三引號”的形式:
stringInTripleQuotes = """Hello Python! This might be a long string going through multiple lines. """
基于這樣的用法,如果我們要在字符串中使用雙引號,就把它放在單引號包圍的字符串里,反之亦然:
stringInDoubleQuotes = "Hello "Python"!" stringInSingleQuotes = "Hello "Python"!"
并且,我們還可以在“三引號”包圍的字符串里,使用單引號和雙引號:
stringInTripleQuotes = """Hello "Python"! This might be a "long string" acrossing multiple lines. """
除了直接用字面值創(chuàng)建字符串之外,我們還可以用數(shù)字類型創(chuàng)建字符串:
aNumber = 123 aString = str(number)
但是,用字符串創(chuàng)建數(shù)字類型的操作,卻不一定總能成功。例如,下面的代碼,就會導(dǎo)致一個運行時錯誤:
error = int("abc") """ Traceback (most recent call last): File "/Users/puretears/Desktop/tmp/aa.py", line 2, inint("abc") ValueError: invalid literal for int() with base 10: "abc" """
只有當(dāng)字符串的字面值真的表示一個數(shù)字的時候,轉(zhuǎn)換才可以完成:
oneTwoThree = int("123")
另外,字符串在Python中是只讀的。一旦創(chuàng)建完成,就不能像C語言一樣用位置去修改了。例如,下面的代碼,也會導(dǎo)致編譯錯誤:
aString[0] = 0 """ Traceback (most recent call last): File "/Users/puretears/Desktop/tmp/aa.py", line 2, inaString[0] = 0 TypeError: "str" object does not support item assignment """
最后一個關(guān)于字符串創(chuàng)建要說明的是,在Python 2和Python 3中,默認(rèn)使用的字符編碼是不同的。Python 2中,使用的是ASCII編碼,為了使用unicode編碼,需要明確在字符串前面使用小寫字母u,像這樣:
stringInDoubleQuotes = u"Hello Python!"
雖然,這樣的語法在Python 3中也適用,但卻沒必要這樣。因為Python 3的字符串,默認(rèn)使用的就是unicode編碼。
常用的字符串操作了解了如何創(chuàng)建字符串之后,我們來看一些常用的字符串操作,它們大多都簡單易行。
首先,我們可以用加號直接連接兩個字符串:
action = "Hello " name = "Mars!" welcome = action + name # Hello Mars!
其次,我們可以直接對字符串使用upper()和lower()方法轉(zhuǎn)換字符串的大小寫:
welcome.upper() # hello mars! welcome.lower() # HELLO MARS!
第三,我們可以用stripe()方法直接去掉字符串的首尾空格:
action.strip()獲取API幫助信息
如果我們要查看字符串類型支持的所有方法,可以使用dir方法:
print(dir(action)) """ ["__add__", "__class__", "__contains__", "__delattr__", "__dir__", "__doc__", "__eq__", "__format__", "__ge__", "__getattribute__", "__getitem__", "__getnewargs__", "__gt__", "__hash__", "__init__", "__init_subclass__", "__iter__", "__le__", "__len__", "__lt__", "__mod__", "__mul__", "__ne__", "__new__", "__reduce__", "__reduce_ex__", "__repr__", "__rmod__", "__rmul__", "__setattr__", "__sizeof__", "__str__", "__subclasshook__", "capitalize", "casefold", "center", "count", "encode", "endswith", "expandtabs", "find", "format", "format_map", "index", "isalnum", "isalpha", "isdecimal", "isdigit", "isidentifier", "islower", "isnumeric", "isprintable", "isspace", "istitle", "isupper", "join", "ljust", "lower", "lstrip", "maketrans", "partition", "replace", "rfind", "rindex", "rjust", "rpartition", "rsplit", "rstrip", "split", "splitlines", "startswith", "strip", "swapcase", "title", "translate", "upper", "zfill"] """
這樣,我們就會得到一個數(shù)組,包含了字符串支持的所有操作。如果要查看某個方法的具體幫助,可以使用help方法:
print(help(action.count)) """ count(...) method of builtins.str instance S.count(sub[, start[, end]]) -> int Return the number of non-overlapping occurrences of substring sub in string S[start:end]. Optional arguments start and end are interpreted as in slice notation. """
這樣,我們就可以看到方法的簽名,以及一個簡短的描述信息了。
分割字符串從上面count的描述信息可以看到,它接受一個形如S[start:end]這樣的參數(shù),在Python里,這叫做String slicing。當(dāng)我們對字符串類型使用[]操作符的時候,既可以像C一樣,使用單個字符的位置讀取內(nèi)容:
action[0] # H
也可以使用一個range,截取字符串的一部分:
hello = action[0:5] # Hello
要說明的是,在Python里,0:5這樣的寫法,是一個半閉半開區(qū)間,就如同Swift中的0..<5一樣。因此,hello的值,是字符串Hello,而不是Hello加上一個空格。
What"s next?以上,就是這一節(jié)的內(nèi)容,我們了解了字符串的創(chuàng)建、常用操作以及獲取API幫助的方式。實際上,除了單純的使用字面值或者數(shù)字之外,我們還可以使用某種形式的模板,定制字符串的內(nèi)容,這叫做string template,在下一節(jié),我們就來了解它的兩種不同用法。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/40710.html
摘要:前言本篇主要介紹基本數(shù)據(jù)類型,以文本進(jìn)度條為例,介紹庫的使用。 前言 本篇主要介紹基本數(shù)據(jù)類型,以文本進(jìn)度條為例,介紹time庫的使用。 并在最后對蟒蛇繪制的代碼進(jìn)...
摘要:鑒于文件讀寫網(wǎng)絡(luò)編程,或者說字節(jié)流處理的重要性,掌握這兩個函數(shù)是邁向高級編程的基礎(chǔ)。相比之下字節(jié)處理門庭冷落,相關(guān)函數(shù)寥寥無幾。上述是函數(shù)簡單的使用場景,接下來分別介紹和函數(shù)。如其名,函數(shù)的工作是將數(shù)據(jù)按照格式打包成字節(jié)數(shù)組。 轉(zhuǎn)載請注明文章出處:https://tlanyan.me/php-pack-a... PHP有兩個重要的冷門函數(shù):pack和unpack。在網(wǎng)絡(luò)編程,讀寫圖像...
摘要:的強(qiáng)大之處在于數(shù)據(jù)操作的方便和大類的第三方本文主要是學(xué)習(xí)收集數(shù)據(jù)操作相關(guān)的內(nèi)容相關(guān)內(nèi)容通過代碼對基本內(nèi)容進(jìn)行學(xué)習(xí)這是一個空的注意這不是一個變量,而是一個類型的變量注意與上面的例子對比,這里在括號內(nèi)加了一個逗號,變量類型為變量包含多個元素,元 0:Python的強(qiáng)大之處在于數(shù)據(jù)操作的方便和大類的第三方module,本文主要是學(xué)習(xí)收集數(shù)據(jù)操作相關(guān)的內(nèi)容 1:Tuple相關(guān)內(nèi)容 #通過代碼對...
摘要:蜂鳥網(wǎng)圖片簡介今天玩點新鮮的,使用一個新庫,利用它提高咱爬蟲的爬取速度。上下文不在提示,自行搜索相關(guān)資料即可創(chuàng)建一個對象,然后用該對象去打開網(wǎng)頁??梢赃M(jìn)行多項操作,比如等代碼中等待網(wǎng)頁數(shù)據(jù)返回創(chuàng)建線程,方法負(fù)責(zé)安排執(zhí)行中的任務(wù)。 1. 蜂鳥網(wǎng)圖片-簡介 今天玩點新鮮的,使用一個新庫 aiohttp ,利用它提高咱爬蟲的爬取速度。 安裝模塊常規(guī)套路 pip install aiohtt...
摘要:蜂鳥網(wǎng)圖片簡介今天玩點新鮮的,使用一個新庫,利用它提高咱爬蟲的爬取速度。上下文不在提示,自行搜索相關(guān)資料即可創(chuàng)建一個對象,然后用該對象去打開網(wǎng)頁。可以進(jìn)行多項操作,比如等代碼中等待網(wǎng)頁數(shù)據(jù)返回創(chuàng)建線程,方法負(fù)責(zé)安排執(zhí)行中的任務(wù)。 1. 蜂鳥網(wǎng)圖片-簡介 今天玩點新鮮的,使用一個新庫 aiohttp ,利用它提高咱爬蟲的爬取速度。 安裝模塊常規(guī)套路 pip install aiohtt...
閱讀 2993·2021-11-23 09:51
閱讀 3009·2021-11-02 14:46
閱讀 874·2021-11-02 14:45
閱讀 2753·2021-09-23 11:57
閱讀 2504·2021-09-23 11:22
閱讀 1934·2019-08-29 16:29
閱讀 753·2019-08-29 16:16
閱讀 948·2019-08-26 13:44