本篇內(nèi)容主要講解“Python進(jìn)制轉(zhuǎn)換和字符串切片的使用方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Python進(jìn)制轉(zhuǎn)換和字符串切片的使用方法”吧!
10年積累的做網(wǎng)站、成都做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有密山免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
又是很水的一上午,不過也學(xué)習(xí)到了一些新知識(shí),比如st.isnum、st.isalpha等等
來來總結(jié)一波:
今天講的有:進(jìn)制轉(zhuǎn)換、str字符串函數(shù)的用法:切片、replace、split、isalpha、strip、count、join。
差不多就這些了,學(xué)就完事了,總結(jié)那是必須的。
常用的就是10進(jìn)制、2進(jìn)制(binary)、8進(jìn)制(octonary)、16進(jìn)制(hexadecimal),他們之前的轉(zhuǎn)換是需要掌握的。
主要就是這三個(gè)內(nèi)置函數(shù):bin、oct、hex,其分別是2進(jìn)制、8進(jìn)制、16進(jìn)制的英文縮寫,具體可看上面。
# 1、進(jìn)制轉(zhuǎn)換 tmp = 5 # 10進(jìn)制轉(zhuǎn)2進(jìn)制 print(bin(tmp)) # 0b101 # 10進(jìn)制轉(zhuǎn)8進(jìn)制 print(oct(tmp)) # 0o5 # 10進(jìn)制轉(zhuǎn)16進(jìn)制 print(hex(tmp)) # 0x5 # 返回?cái)?shù)的二進(jìn)制有效位數(shù) print(tmp.bit_length()) # 3 對(duì)應(yīng)二進(jìn)制:0b101正好是3位
主要用到 int(str, num)
函數(shù)進(jìn)行互轉(zhuǎn),具體用法見下方。
# 2/8/16進(jìn)制向10進(jìn)制轉(zhuǎn)換 # 1、2進(jìn)制轉(zhuǎn)10進(jìn)制 print(int("0b101", 2)) # 5 # 2、8進(jìn)制轉(zhuǎn)10進(jìn)制 print(int("0o17", 8)) # 15 # 3、16進(jìn)制轉(zhuǎn)10進(jìn)制 print(int("0x14", 16)) # 20 # 4、8進(jìn)制轉(zhuǎn)2進(jìn)制 print(bin(int("0o17", 8))) # 0b1111 # 其他的也同理,使用int作為中間量,進(jìn)行互轉(zhuǎn)。
下面介紹的都是字符串的種種操作方法,記住即可。
直接看例子吧,三種用法都有。
st = "thepathofpython" # 1、一般切片 print(st[0:3]) # the 區(qū)間包前不包后 # 2、帶步長的切片 ** print(st[0:8:3]) # tph 最后面的一個(gè)參數(shù)是步長 # 3、從后往前掃描 切片 print(st[-6:]) # python 右區(qū)間若無值,則默認(rèn)包括末尾 到底 # 3.1、從后往前掃描 + 步長 print(st[-6::-2]) # potph 步長為負(fù)數(shù) 表示從右到左掃 print(st[-6::2]) # pto 步長為正數(shù) 表示從左到右掃 # 4、重點(diǎn) 面試題???nbsp;翻轉(zhuǎn)字符串 *** print(st[::-1]) # nohtypfohtapeht 左區(qū)間若無值,則默認(rèn)從首位開始
將字符串中的所有字母轉(zhuǎn)成大寫或者小寫,upper和lower函數(shù)
tmp = "xiYuanGongZi" # 字符串字母全部變成大寫 print(tmp.upper()) # XIYUANGONGZI # 字符串中字母全部變成小寫 print(tmp.lower()) # xiyuangongzi
判斷字符串開頭和尾端是否等于某一字符串。
tmp = "thepathofpython" print(tmp.startswith('the')) # True print(tmp.startswith('zhe')) # False print(tmp.endswith("python")) # True
tmp.replace(old, new, count)
替換一些特定的字符串,少量推薦。若有大量的字符要替換,推薦使用re
正則,后面會(huì)有介紹。
replace函數(shù)用法例子:
tmp = "thepathofthepython" # tmp.replace(old, new, count) # 1、簡單替換 print(tmp.replace("the", "study")) # studypathofstudypython # 2、限制替換次數(shù) print(tmp.replace("the", "study", 1)) # studypathofthepython 第三個(gè)count 限制替換的old的次數(shù)
# 左右兩端 st.strip() st.strip("name") # 單獨(dú)去除一端空白/自定義字符 st.lstrip() st.rstrip()
默認(rèn)去除字符串兩端的空白字符如:空格、制表符\t、換行符\n。當(dāng)然你也可以設(shè)置自定義的字符。
strip例子:
tmp = "\n \tthepathof\tpython\n\t" # 1、默認(rèn)兩端去除空白字符 # 兩端從頭掃描 去除空白字符,一旦碰到非空表字符,就停止掃描。所以of和python的\t沒有被移除 print(tmp.strip()) # thepathof python tmp2 = "tthepathof\tpython" # 2、設(shè)置特定字符 # 重點(diǎn) strip中的字符串參數(shù) ,每一個(gè)字符都作為要消除的,并不是整體。兩端掃描,遇到參數(shù)字符串中的任意字符就消除,若沒遇到就停止掃描。 print(tmp2.strip("thpen")) # athof pytho # 3、單端掃描 print(tmp2.lstrip("thpen")) # athof python 從首端掃描 print(tmp2.rstrip("thpen")) # tthepathof pytho 從未端掃描 # 總結(jié):這點(diǎn)有點(diǎn)繞,與replace不同是,strip是從兩端掃描,只要遇到非消除字符就停止掃描,結(jié)束。
st.split(char, count)
,split函數(shù)用于分割字符串 ,變成列表.
split用法例子:
tmp = "*the*path*of*python"# 1、普通分割print(tmp.split("*")) # ['', 'the', 'path', 'of', 'python']# 2、限制分割數(shù)量print(tmp.split("*", 3)) # ['', 'the', 'path', 'of*python'] 第二個(gè)參數(shù)count,限制分割的數(shù)量?# 沒啥難點(diǎn),注意分割會(huì)產(chǎn)生n+1的字符串(n是要分割的字符串在原字符串中的數(shù)量)
join函數(shù)語法:
str.join(sequence)# sequence -- 要連接的元素序列。
這個(gè)函數(shù)簡直就是split函數(shù)的cp,一個(gè)分割,一個(gè)合并。
join函數(shù)例子:
tmp = ['', 'the', 'path', 'of', 'python']print("*".join(tmp)) # *the*path*of*python
和C++中的用法差不多,連函數(shù)名稱都一樣,果然同宗生????。
str.isalpha() # 字符串的所有字符是否都是字母str.isalnum() # 字符串的所有字符是否都是字母或數(shù)字str.isdecimal() # 字符串的所有字符是否都是十進(jìn)制數(shù)字
例子:
tmp = "zan66"tmp2 = "zan"tmp3 = "666"print(tmp.isalnum()) # True 字符串的所有字符是否都是字母或數(shù)字print(tmp2.isalpha()) # True 字符串的所有字符是否都是字母print(tmp3.isdecimal()) # True 字符串的所有字符是否都是十進(jìn)制數(shù)字
主要與統(tǒng)計(jì)某個(gè)字符在字符串中出現(xiàn)的次數(shù)。
count函數(shù)例子:
tmp = "thepathofpython"print(tmp.count("t")) # 3print(tmp.count("z")) # 0
一般用于列表中,判斷某成員是否在列表中。
例子:
tmp = ['the', 'path', 'of', 'python']print('python' in tmp) # Trueprint('love' not in tmp) # True
肝的我背疼,歇歇,總算是寫完了。本來不想寫的,但是必須的堅(jiān)持,每天必定要完成計(jì)劃。跟著計(jì)劃走才會(huì)有有進(jìn)步。
全程手敲,對(duì)知識(shí)的理解又加深了,明天繼續(xù)加油。
參考鏈接:
https://www.runoob.com/python/att-string-join.html
https://www.zwjjiaozhu.top
到此,相信大家對(duì)“Python進(jìn)制轉(zhuǎn)換和字符串切片的使用方法”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!