日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python 字符串笔记(转自木木)

發布時間:2025/5/22 python 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python 字符串笔记(转自木木) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用字符串

Table of Contents

  • 1 基本字符串操作
  • 2 字符串格式化:精簡版
    • 2.1 用字符串格式化操作符
    • 2.2 用string的Template格式化字符串
  • 3 字符串格式化:完整版
    • 3.1 轉換說明符
    • 3.2 簡單轉換
    • 3.3 字段寬度和精度
    • 3.4 符號,對齊和 0 填充
  • 4 字符串方法
    • 4.1 find
    • 4.2 join
    • 4.3 lower
    • 4.4 replace
    • 4.5 split
    • 4.6 strip
    • 4.7 translate

1 基本字符串操作

  • 說明:字符串也是序列的一種,所以分片,乘法,索引,求長度,最大, 最小,判斷成員資格等都可以應用在字符串上;
  • 注意:字符串是不可變的,所以不能對其進行賦值;
  • 例子 1: >>> mystr="Test string"2: >>> mystr[0] = 't'3: Traceback (most recent call last):4: File "<pyshell#1>", line 1, in <module>5: mystr[0] = 't'6: TypeError: 'str' object does not support item assignment7: >>>
  • 2 字符串格式化:精簡版

    2.1 用字符串格式化操作符

  • 說明:字符串格式化使用字符串格式化操作符百分號( % )實現,在操作符的左側是格式化字符串,右側是希望被格式化的值;
  • 注意:
  • 只有元組和字典可以被格式化為一個以上的值,列表和其他序列會被格式化為一個值;
  • 轉換說明符,用于標記需要插入轉換值的位置;
  • 如果在格式化字符串中要輸出百分號,則需要使用 %%
  • 例子: 1: #一般格式化 2: >>> myformat = "Hello, my name is %s %s" 3: >>> name = ('Bill','Gunn') 4: >>> print (myformat % name) 5: Hello, my name is Bill Gunn 6: >>> 7: 8: #用列表格式化 9: >>> myformat = 'Hello, my name is %s'10: >>> name=['Bill', 'Gunn']11: >>> print(myformat % name)12: Hello, my name is ['Bill', 'Gunn']13: 14: #打印浮點數15: >>> import math16: >>> print ("PI = %.5f" % pi)17: PI = 3.1415918: 19: #打印百分號20: >>> print("%.2f%%"% 22.3)21: 22.30%22: >>>
  • 2.2 用string的Template格式化字符串

  • 說明:類似于Unix Shell中的變量替換,使用substitute方法,將字符串 模板中的$foo替換為傳遞進來的參數foo
  • 例子: 1: #從string模塊中導入Template 2: >>> from string import Template 3: #創建模板 4: >>> myformat = Template("My name is $name") 5: #替換變量并打印 6: >>> print(myformat.substitute(name="Bill Gunn")) 7: My name is Bill Gunn 8: >>> 9: 10: #輸出美元符號的方法,在模板里輸入兩個$11: >>> mytemplate = Template("The price is $$$price")12: >>> mytemplate.substitute(price=100)13: 'The price is $100'14: >>>15: 16: #如果參數與后面的字符串相連,需要用大括號將其括起來17: >>> from string import Template18: >>> mytemplate = Template("It's ${x}tastic!")19: >>> mytemplate.substitute(x='slum')20: "It's slumtastic!"21: >>>22: 23: #使用字典替換參數24: >>> mytemplate = Template("My $property is $value")25: >>> name = {}26: >>> name["property"] = "name"27: >>> name["value"] = "Bill Gunn"28: >>> mytemplate.substitute(name)29: 'My name is Bill Gunn'30: >>>31:
  • 3 字符串格式化:完整版

  • 說明:字符串格式化操作符的右操作數如果是元組,那么在格式化字符串 中必須將元組中的各個元素都有對應的轉義說明符。
  • 例子: 1: >>> data = tuple(list("123")) 2: >>> data 3: ('1', '2', '3') 4: #格式化字符串中只有一個轉義說明符,而元組中有三個元素,轉換會報錯 5: >>> print ("data is %s" % data) 6: Traceback (most recent call last): 7: File "<pyshell#18>", line 1, in <module> 8: print ("data is %s" % data) 9: TypeError: not all arguments converted during string formatting10: #顯示元組中的全部元素11: >>> print ("data is %s %s %s" % data)12: data is 1 2 313: >>>14:
  • 3.1 轉換說明符

  • 轉換說明符 轉義說明符含義
    d,i帶符號的十進制整數
    o不帶符號的八進制
    u不帶符號的十進制
    x不帶符號的十六進制(小寫)
    X不帶符號的十六進制(大寫)
    e科學計數法的浮點數(小寫)
    E科學計數法的浮點數(大寫)
    f,F十進制浮點數
    g如果指數大于-4或者小于精度值則和e相同,否則和f相同
    G如果指數大于-4或者小于精度值則和E相同,否則和F相同
    C單字符(接受整數或者單字符字符串)
    r字符串(使用repr轉換任意Python對象)
    s字符串(使用str轉換任意Python對象)
  • 3.2 簡單轉換

  • 例子: 1: #十進制整數 2: >>> print ("The price is $%d" % 12) 3: The price is $12 4: 5: #十六進制整數 6: >>> print ("Hex %x" % 12) 7: Hex c 8: 9: #八進制整數10: >>> print ("Oct %o" % 12)11: Oct 1412: >>>13:
  • 3.3 字段寬度和精度

  • 說明:
  • 字段寬度:轉換后的值所保留的最小字符個數;
  • 字段精度:轉換后,結果中應該的小數位數;
  • 可以使用*作為字段寬度或者精度
  • 例子: 1: #限制寬度 2: >>> "%10f" % math.pi 3: ' 3.141593' 4: 5: #限制小數位數 6: >>> "%5.2f" % math.pi 7: ' 3.14' 8: 9: #用星號限制寬度和精度,下例中,寬度為10,精度為510: >>> '%*.*s' % (10, 5, 'adfasdfadsfasdfasdfasdf')11: ' adfas'12: >>>13:
  • 3.4 符號,對齊和 0 填充

  • 說明:
  • 零:寬度不夠時用數字0填充;
  • 負號:左對齊;
  • 正號:不管是正數還是負數都標記出符號
  • 空格:寬度不夠時用空格填充;
  • 例子: 1: #空白補0 2: >>> print ("%010f" % math.pi) 3: 003.141593 4: 5: #左對齊 6: >>> "%-10.2f" % math.pi 7: '3.14 ' 8: 9: #空白右對齊10: >>> print("% 5d\n% 5d" % (123, 12))11: 12312: 1213: 14: #顯示正負符號15: >>> print ("%+5d\n%+5d" % (123, -123))16: +12317: -12318: >>>19:
  • 4 字符串方法

    4.1 find

  • 說明:用于在長字符串中查找子字符串,如果找到,則返回子字符串在左 側第一次出現的索引,沒找到返回-1,在查找時,還可以指定在長字符串 中查找的范圍,提供起始索引和結束索引作為查找的參數;
  • 注意:查找時,包括起始索引位置,但是不包括結束索引的位置;
  • 例子: 1: >>> string.ascii_letters 2: 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' 3: >>> letters = string.ascii_letters 4: >>> letters.find('AB') 5: 26 6: >>> letters.find('X',30,-1) 7: 49 8: >>> letters.find("AB",26) 9: 2610:
  • 4.2 join

  • 說明:將隊列中的元素用字符串連接起來,并且列表中的元素必須是字符 串;
  • 例子: 1: >>> data = list('123456')2: >>> data3: ['1', '2', '3', '4', '5', '6']4: >>> "AB".join(data)5: '1AB2AB3AB4AB5AB6'6: >>> 7:
  • 4.3 lower

  • 說明:將字符串轉換成小寫字母,并返回,但是原字符串不改變;
  • 例子: 1: >>> mystr="ABCD"2: >>> mystr.lower()3: 'abcd'4: >>> mystr5: 'ABCD'6: >>> 7:
  • 4.4 replace

  • 說明:返回所有匹配項都被替換之后的字符串
  • 例子: 1: >>> mystr = "My name is Geng Qi"2: >>> mystr.replace("Geng Qi", "Bill Gunn")3: 'My name is Bill Gunn'4: >>>
  • 4.5 split

  • 說明:將字符串分割成序列;
  • 注意:如果不提供分割符,則會將空白符當作分割符;
  • 例子 1: #以加號為分割符 2: >>> mystr = "1+2+3+4+5+6" 3: >>> mystr.split('+') 4: ['1', '2', '3', '4', '5', '6'] 5: 6: #不提供分割符時,以空白符為分割符 7: >>> mystr = "This is a test string" 8: >>> mystr.split() 9: ['This', 'is', 'a', 'test', 'string']10: >>> 11:
  • 4.6 strip

  • 說明:去除兩側的空白,也可以去除指定的字符;
  • 例子: 1: >>> mystr = " asdfad adfasf asdf " 2: >>> mystr 3: ' \tasdfad adfasf asdf \t\t' 4: #去除空白符 5: >>> mystr.strip() 6: 'asdfad adfasf asdf' 7: 8: #去除指定字符 9: >>> mystr.strip('\t')10: ' \tasdfad adfasf' asdf '11: >>> 12:
  • 4.7 translate

  • 說明:translate是單字替換,可以同時替換多個字符
  • 例子: 1: >>> table = str.maketrans('cs', 'kz')2: >>> table3: {115: 122, 99: 107}4: >>> "Please don't knock at my door!".translate(table)5: "Pleaze don't knokk at my door!"6:
  • 轉載于:https://www.cnblogs.com/iwangzc/articles/4031144.html

    總結

    以上是生活随笔為你收集整理的Python 字符串笔记(转自木木)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。