溫馨提示×

溫馨提示×

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

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

python字符串的基礎(chǔ)操作

發(fā)布時間:2021-09-01 20:52:33 來源:億速云 閱讀:89 作者:chen 欄目:編程語言

本篇內(nèi)容介紹了“python字符串的基礎(chǔ)操作”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

1 處理字符串

  1. 原始字符串:在字符串開始的引號之前加上r,使它成為原始字符串?!霸甲址蓖耆雎运械霓D(zhuǎn)義字符,打印出字符串中的所有倒斜杠。

  2. 用三重引號的多行字符串:多行字符串的起止是3個單引號或3個雙引號。”三重引號“之間的所有引號、制表符或換行,都被認為是字符串的一部分。

  1. 多行字符串常常用作多行注釋。

  2. 字符串下標和切片: 字符串像列表一樣,使用下標和切片。

  3. 字符串in和not in 操作符:像列表一樣,in和not in操作符也可以用于字符串。

2 字符串方法upper()、lower()、isupper()、和islower()

upper()和lower()字符串方法返回一個新的字符串,其中原字符串的所有字母都被相應(yīng)地轉(zhuǎn)換為大寫或小寫。字符串中的非字母字符保持不變。

>>> spam='hello world'>>> spam.upper()'HELLO WORLD'>>> spam'hello world'>>> spam =spam.upper()>>> spam'HELLO WORLD'#用islower(),isupper()來判斷字符串中的字母是否都是小寫和大寫。>>> spam.islower()
False>>> spam.isupper()
True#這樣調(diào)用也是可行的>>> 'hello'.upper()'HELLO'>>> 'HELLO'.lower()'hello'

這些方法沒有改變字符串本身,而是返回一個新的字符串

3 isX字符串方法

  • isalpha() 返回True,如果字符串中值包含字母,并且非空

  • isalnum() 返回True,如果字符串中只包含字母和數(shù)字,并且非空

  • isdecimal() 返回True,如果字符串中只包含數(shù)字字符,并且非空

  • isspace() 返回True, 如果字符串中只包含空格,制表符和換行,并且非空

  • istitle() 返回True,如果字符串中只包含以大寫字母開頭,后面都是小寫字母的單詞。

該程序反復(fù)詢問用戶年齡和口令,知道他們輸入一個有效的值:

while True:    print('Enter your age:')
    age =input()
    if age.isdecimal():        break
    print('please enter a number for you age')while True:    print('select a new password (letters and numbers only):')
    password = input()
    if password.isalnum():        break
    print('passwords can only have letters and numbers.')

4 字符串方法startswith()和endswith()

startswith()和endswith()方法,如果他們調(diào)用的字符串以該方法傳入的字符串開始或結(jié)束,則返回True,反之則返回False。如果要檢查字符串的開始或結(jié)束部分是否等于另一個字符串,而不是整個字符串,這些方法就可以替代等于操作符==,這很有用。

5 字符串方法join()和split()

join()方法在一個字符串上調(diào)用,參數(shù)是一個字符串列表,返回一個字符串。返回的字符串由傳入的列表中每個字符串連接而成。

>>> ','.join(['cat','rat','bat'])'cat,rat,bat'>>> ''.join(['my','name','is','Simon'])'mynameisSimon'>>> ' '.join(['my','name','is','Simon'])'my name is Simon'>>> 'ABC'.join(['my','name','is','Simon'])'myABCnameABCisABCSimon'>>>

split()方法做的事情正好相反,它針對一個字符串調(diào)用,返回一個字符串列表。

>>> 'my name is Simon'.split()
['my', 'name', 'is', 'Simon']>>> 'myABCnameABCisABCSimon'.split("ABC")
['my', 'name', 'is', 'Simon']

默認情況下,字符串'my name is Simon'按照空白字符分割,諸如空格、制表符或換行符。

6 用rjust()、ljust()和center()方法對齊文本

rjust()和ljust()字符串方法返回調(diào)用他們的字符串的填充版本,通過插入空格來對齊文本。這兩個方法的

  • 第一個參數(shù)是一是整數(shù)長度,用于對齊字符串,

  • 第二個可選參數(shù)是將指定一個填充字符,取代空格字符。

center()字符串方法與ljust()和rjust()類似,但他讓文本居中。

>>> 'hello'.rjust(10)'     hello'>>> 'hello'.ljust(20)'hello               '>>> 'hello'.rjust(20,'*')'***************hello'>>> 'hello'.ljust(20,'*')'hello***************'>>> 'hello'.center(10,'=')'==hello==='

'hello'.rjust(10)是要右對齊,將'hello'放在一個長度為10的字符串中'hello'有5個字符他會在左邊加5個空格,得到一個10個字符的字符串。

這個是一個打印表格式數(shù)據(jù),流出空格的小代碼:

def printPicnic(itemsDict, leftWidth, rightWidth):
    print('PICNIC ITEMS'.center(leftWidth + rightWidth, '-'))    for k, v in itemsDict.items():
        print(k.ljust(leftWidth, '.') + str(v).rjust(rightWidth))
picnicItems = {'sandwiches': 4, 'apples': 12, 'cups': 4, 'cookies': 8000}
printPicnic(picnicItems, 12, 5)
printPicnic(picnicItems, 20, 6)

運行結(jié)果如下:

---PICNIC ITEMS--
sandwiches..    4apples......   12cups........    4cookies..... 8000-------PICNIC ITEMS-------
sandwiches..........     4apples..............    12cups................     4cookies.............  8000

7 用strip()、rstrip()和lstrip()刪除空白字符

  • strip()字符串返回一個新的字符串,它的開頭和末尾都沒有空白字符。

  • lstrip()刪除左邊的空白字符

  • rstrip()刪除右邊的空白字符

有一個可選的字符串參數(shù),指定兩邊的那些字符應(yīng)該刪除。

>>> spam = 'spamspamspambaconspameggsspamspam'>>> spam.strip('spam')'baconspamegg'

向strip()方法傳入?yún)?shù)'spam',告訴它在變量中存儲的字符串兩端刪除出現(xiàn)的s、p、a、m。傳入strip()方法的字符串中的字符順序不重要strip('spam')和strip('mpsa')做的事情一樣

8 pyperclip()模塊拷貝粘貼字符串

pyperclip模塊有copy()和paste()函數(shù),它可以像計算機的剪貼板發(fā)送文本,或從它接收文本。將程序的輸出發(fā)送到剪貼板,使他很容易粘貼到郵件,文字處理程序或其他軟件中。

實踐項目 在wiki標記中添加無序列表

import pypercliptext = pyperclip.paste()lines = text.split('\n')for i in range(len(lines)):    lines[i] = '*'+ lines[i]text='\n'.join(lines)
pyperclip.copy(text)

“python字符串的基礎(chǔ)操作”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細節(jié)

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

AI