0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python-字符串

汽車電子技術(shù) ? 來(lái)源:程序猿知秋 ? 作者:程序猿知秋 ? 2023-02-16 15:05 ? 次閱讀

字符串的定義與操作

  • 字符串就是 一串字符 ,是編程語(yǔ)言中表示文本的數(shù)據(jù)類型
  • Python中使用一對(duì)雙引號(hào) "" 或者一對(duì)單引號(hào)來(lái)定義.
  • 使用索引獲取一個(gè)字符串中 指定位置的字符,索引計(jì)數(shù)從0開(kāi)始
  • 可以用 for/while 循環(huán)遍歷字符串中的每一個(gè)字符

示例

#雙引號(hào)
name="zhangsan"
for s in name:
  print(s)


#單引號(hào)
name2='zhangsan'
for s in name2:
  print(s)




name3='zhangsan"ddd"'
print(name3)

輸出

圖片

字符串常用操作

name="zhangsan"


#統(tǒng)計(jì)字符串長(zhǎng)度
print(len(name))


#統(tǒng)計(jì) 子字符串/字符 出現(xiàn)的次數(shù)
print(name.count("an"))
print(name.count("a"))


#查看字符串的索引
print(name.index("an"))

**輸出結(jié)果

**

圖片

字符串的類型判斷

方法 說(shuō)明
string.isspace() 如果string中只包含空格,則返回True
string.isalnum() 如果string至少有一個(gè)字符并且所有字符都是字母或數(shù)字,則返回True
string.isalpha() 如果string至少有一個(gè)字符并且所有字符都是字母則返回True
string.isdecimal() 如果string只包含數(shù)字,則返回True,全角數(shù)字
... 還有很多類似的方法,大家用到時(shí)可百度查詢相關(guān)資料

字符串的查找和替換

方法 說(shuō)明
string.startswith(str) 檢查字符串是否以 str 開(kāi)頭,是則返回True
string.endswith(str) 檢查字符串是否以 str 結(jié)尾,是則返回True
string.find(str,start=0,end=len(string)) 在指定(start,end)的范圍內(nèi),查找string中是否包含 str ,包含則返回相應(yīng)的索引,否則返回 -1
string.rfind(str,start=0,end=len(string)) 類似find() 函數(shù),不過(guò)是從右邊開(kāi)始查找
string.index(str,start=0,end=len(string)) 與find() 函數(shù) 類似,不過(guò),如果str 不在string中會(huì)報(bào)錯(cuò)
...

字符串中的轉(zhuǎn)義字符

  • \\t 在控制臺(tái)輸出一個(gè) ** 制表符 ,協(xié)助在輸出文本時(shí) 垂直方向 **保持對(duì)齊
  • \\n 在控制臺(tái)輸出一個(gè)** 換行符**
  • 制表符 的功能是在不使用表格的情況下在 垂直方向 按列對(duì)齊文本
轉(zhuǎn)義字符 描述
\\ 反斜杠符號(hào)
' 單引號(hào)
" 雙引號(hào)
\\n 換行
\\t 橫向制表符
\\r 回車

注:windows 系統(tǒng)中 \\r\\n 表示換行; linux 系統(tǒng)中用 \\n 表示換行

整體示例

demo1="   "
demo2="zhangsan"
demo3="1233"


#判斷是否包含空格
print(demo1.isspace())


#判斷是否只包含數(shù)字
print(demo2.isdecimal())
print(demo3.isdecimal())


#判斷字符的開(kāi)頭
print(demo2.startswith("zha"))


#查找指定字符串
print(demo2.find("gs"))


#轉(zhuǎn)義雙引號(hào)、回車
print("aaaa\\nbbb\\rccc\"張三\"")

輸出結(jié)果:

圖片

注:此處可以看到 \\r 和 \\n 最后輸出的雖然都是換行,但在不同的操作系統(tǒng)中是有區(qū)別的

  • ‘\\r’ (回車):即將光標(biāo)回到當(dāng)前行的行首(而不會(huì)換到下一行),之后的輸出會(huì)把之前的輸出覆蓋
  • ‘\\n’ 換行,換到當(dāng)前位置的下一位置,而不會(huì)回到行首;
  • Unix系統(tǒng)里,每行結(jié)尾只有“<換行>”,即"\\n";
  • Windows系統(tǒng)里面,每行結(jié)尾是“<回車><換行>”,即“\\r\\n”;
  • Mac系統(tǒng)里,每行結(jié)尾是“<回車>”,即"\\r";

字符串的轉(zhuǎn)換與對(duì)齊

  • 大小寫轉(zhuǎn)換
方法 說(shuō)明
string.capitalize() 把字符串的第一個(gè)字符大寫
string.title() 把字符串的每個(gè)單詞首字母大寫
string.lower() 轉(zhuǎn)換string 中所有大寫字符為小寫
string.upper() 轉(zhuǎn)換string中的小寫字母為大寫
string.swapcase() 翻轉(zhuǎn)string中的大小寫
  • 文本對(duì)齊
方法 說(shuō)明
string.ljust(width) 返回一個(gè)原字符串左對(duì)齊,并使用空格填充至長(zhǎng)度 width的新字符串
string.rjust(width) 返回一個(gè)原字符串右對(duì)齊,并使用空格填充至長(zhǎng)度 width的新字符串
string.center(width) 返回一個(gè)原字符串居中,并使用空格填充至長(zhǎng)度 width的新字符串
  • 去除空白字符
方法 說(shuō)明
string.lstrip() 截掉 string 左邊開(kāi)始的 空白字符
string.rstrip() 截掉 string 右邊開(kāi)始的 空白字符
string.strip() 截掉 string 左右兩邊的空白字符

示例

#要求,居中打印古詩(shī),字母轉(zhuǎn)成大寫,去除空格
p=["春曉","mhr","春眠不覺(jué)曉","   處處聞啼鳥(niǎo)","月來(lái)風(fēng)雨聲   ",
"   花落知多少   "]


for s in p:
  #判斷是字母則轉(zhuǎn)換
  if s.isalpha():
    print(s.center(10).upper())
  else:
    #去空格,并居中,10表示整行為10個(gè)字符,空格填充
    print(s.strip().center(10))

輸出結(jié)果

圖片

字符串的拆分、拼接、切片

  • 拆分和連接
方法 說(shuō)明
string.partition(str) 把字符串 string 分成一個(gè) 3元素的元組(str前面,str,str后面)
string.rpartition(str) 類似partition()方法,不過(guò)是從右邊開(kāi)始查找
string.split(str) 以stro 為分隔符拆分 string
string.splitlines() 按照行('\\r','\\n','\\r\\n')分隔,返回一個(gè)包含各行作為元素的列表
string.join(seq) 以string作為分隔符,將seq 中所有的元素,合并為一個(gè)新的字符串

示例

demo_str="aaa,bbb,ccc,ddd"
demo_list=["a","b","c"]


#拆分字符串
print(demo_str.split(","))


#合并字符串用 "-" 連接
print("-".join(demo_list))

**輸出結(jié)果

**

圖片

字符串的切片

  • 切片方法使用于 字符串、列表、元組
    • 切片 使用 索引值 來(lái)限定范圍,從一個(gè)大的字符串中 切出 小的字符串
    • **列表 和 元組 都是 有序 的集合,都能夠通過(guò) 索引值 **獲取對(duì)應(yīng)的數(shù)據(jù)
    • 字典 是一個(gè)無(wú)序的集合,使用鍵值對(duì)保存數(shù)據(jù)
  • 使用注意
    • 指定的區(qū)間屬于 左閉右開(kāi) 型(開(kāi)始索引,結(jié)束索引)
      • 開(kāi)始索引 >= 范圍 < 結(jié)束索引
      • 從 **起始 **位置開(kāi)始,到 **結(jié)束 **位的前一位 結(jié)束不包含結(jié)束位本身)
    • 從頭開(kāi)始, 開(kāi)始索引 數(shù)字可以省略 ,冒號(hào)不能省略
    • 到末尾結(jié)束,**結(jié)束索引 **數(shù)字可以省略,冒號(hào)不能省略
    • 步長(zhǎng)默****認(rèn) 為 1 ,如果連續(xù)切片,數(shù)字和冒號(hào)都可以省略

**語(yǔ)法

**

字符串[開(kāi)始索引:結(jié)束索引:步長(zhǎng)]

**示例

**

num_str="0123456789"


#截取3~5 位置字符串
print(num_str[3:6])


#截取 4 到末尾的字符串
print(num_str[4:])


#截取開(kāi)始到 5  位置的字符串
print(num_str[:6])
#或者
print(num_str[0:6])


#截取完整的字符串
print(num_str[:])


#從0開(kāi)始,每隔一個(gè)字符取一個(gè)
print(num_str[0::2])


#從末尾開(kāi)始,每隔一個(gè)字符取一個(gè)
print(num_str[-1::-2])


#截取末尾的兩個(gè)字符
print(num_str[-2:])


#反轉(zhuǎn)字符串
print(num_str[::-1])
#或者
print(num_str[-1::-1])

輸出結(jié)果

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 字符串
    +關(guān)注

    關(guān)注

    1

    文章

    566

    瀏覽量

    20384
  • 數(shù)據(jù)類型
    +關(guān)注

    關(guān)注

    0

    文章

    236

    瀏覽量

    13567
  • python
    +關(guān)注

    關(guān)注

    53

    文章

    4753

    瀏覽量

    84069
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    #硬聲創(chuàng)作季 #云計(jì)算 云計(jì)算-1511.01 Python-字符串詳解01-1

    字符串python
    水管工
    發(fā)布于 :2022年10月11日 18:29:51

    #硬聲創(chuàng)作季 #云計(jì)算 云計(jì)算-1511.01 Python-字符串詳解01-2

    字符串python
    水管工
    發(fā)布于 :2022年10月11日 18:30:14

    #硬聲創(chuàng)作季 #云計(jì)算 云計(jì)算-1511.02 Python-字符串詳解02-1

    字符串python
    水管工
    發(fā)布于 :2022年10月11日 18:30:37

    #硬聲創(chuàng)作季 #云計(jì)算 云計(jì)算-1511.02 Python-字符串詳解02-2

    字符串python
    水管工
    發(fā)布于 :2022年10月11日 18:30:57

    #硬聲創(chuàng)作季 #云計(jì)算 云計(jì)算-1511.03 Python-字符串詳解03-1

    字符串python
    水管工
    發(fā)布于 :2022年10月11日 18:31:18

    #硬聲創(chuàng)作季 #云計(jì)算 云計(jì)算-1511.03 Python-字符串詳解03-2

    字符串python
    水管工
    發(fā)布于 :2022年10月11日 18:31:38

    #硬聲創(chuàng)作季 #云計(jì)算 云計(jì)算-1511.04 Python-字符串詳解04-1

    字符串python
    水管工
    發(fā)布于 :2022年10月11日 18:31:59

    #硬聲創(chuàng)作季 #云計(jì)算 云計(jì)算-1511.04 Python-字符串詳解04-2

    字符串python
    水管工
    發(fā)布于 :2022年10月11日 18:32:19

    #硬聲創(chuàng)作季 #云計(jì)算 云計(jì)算-1511.05 Python-字符串詳解05

    字符串python
    水管工
    發(fā)布于 :2022年10月11日 18:32:45

    python字符串拼接方式了解

    python字符串拼接的方式 在Python的實(shí)際開(kāi)發(fā)中,很多都需要用到字符串拼接,python字符串
    發(fā)表于 12-06 10:09 ?989次閱讀

    什么是復(fù)制字符串?Python如何復(fù)制字符串

    連續(xù)幾篇文章都在寫 Python 字符串,這出乎我的意料了。但是,有的問(wèn)題,不寫不行,特別是那種靈機(jī)一動(dòng)想到的問(wèn)題,最后你發(fā)現(xiàn),很多人根本不懂卻又誤以為自己懂了。那就繼續(xù)刨根問(wèn)底,探究個(gè)明白吧
    發(fā)表于 11-25 10:32 ?2928次閱讀

    2.2 python字符串類型

    2.2 python字符串類型 1. 如何定義字符串? 字符串Python中最常用的數(shù)據(jù)類型之一。 使用單引號(hào)或雙引號(hào)來(lái)創(chuàng)建
    的頭像 發(fā)表于 02-17 17:08 ?1339次閱讀

    python字符串有哪些特定方法

    python字符串序列操作也適用于列表和元組。 python字符串還有獨(dú)有方法,即字符串對(duì)象的函數(shù),其他對(duì)象不可調(diào)用,只有
    的頭像 發(fā)表于 02-23 15:02 ?602次閱讀

    淺析python字符串模式匹配

    python字符串可以通過(guò)re模塊的模式匹配來(lái)處理文本。
    的頭像 發(fā)表于 02-23 15:04 ?2235次閱讀

    Python中檢查字符串包含的方法

    Python 有多種處理字符串的方法。今天我們介紹如何檢查一個(gè)字符串中是否包含另一個(gè)字符串。
    的頭像 發(fā)表于 05-14 16:02 ?1.5w次閱讀