1. 程式人生 > >python 字符串,字符串運算,比較,索引,切片等

python 字符串,字符串運算,比較,索引,切片等

str 字符串的運算

一:
字符串: str
作用:用來記錄文本信息,
字面值表示方法:用引號括起來的部分都是字符串。
‘‘ 單引號
"" 雙引號
‘‘‘ 三引號
""" 三雙引號
單引號和雙引號的區別:
單引號的雙引號不算結束符
雙引號內的單引號不算結束符
三引號字符串的作用:
三引號內可以包含單引號和雙引號
三引號字符串重的換行會自動轉換為換行符‘\n‘


二:用轉義序列代表特殊字符
字符串字面值中用子字符反斜杠\
後跟一些字符代表特殊的一個字符
如: \‘ 代表一個單引號
\" 代表雙引號
\n 代表一個換行符
字符串中反斜杠字義符表:
\‘ 單引號
\" 雙引號
\ 反斜杠

\n 換行
\r 返回光標至行首
\f 換頁
\t 水平制表符
\v 垂直制表符
\b 退格
\0 字符串,字符值為零
\xXX XX 兩位十六進制表示的字符
\uXXXX Unicode16的十六進制表示的字符
\uXXXXXXXX Unicode32的十六進制表示的字符


三:
raw 字符串 (原始字符串)
格式:
r ‘字符串內容‘
r "字符串內容"
r ‘‘‘字符串內容‘‘‘
r """字符串內容"""
作用: 讓轉義符號 \ 無效
#轉義後的:

>> a = ‘C:\newfile\test.py‘

>> a
‘C:\newfile\test.py‘
#未轉義raw字符串:
>> a = r‘C:\newfile\test.py‘
>> a
‘C:\newfile\test.py‘
>>


四:
字符串的運算:

  • 加號運算符用於拼接字符串
    += 運算符用原字符串與右側字符串拼接生成新的字符串
    示例:
    s = ‘ABCD‘ + ‘EFG‘
    s += ‘123‘
    print(s) >> ABCDEFG1234
    s2 = s + s
    print(s2) >> ABCDEFG1234ABCDEFG1234
    • 乘運算:生成重復的字符串
      = 生成重復的字符串並讓原變量綁定成後的字符串。
      示例:
      s = "ABC"
      3 #s = ‘ABCABCABC‘
      print(s)
      s2 = 5 ‘0‘ #s2 = ‘00000‘
      s = "123"
      s
      = 3 # s = ‘123123123‘

五:
字符串的比較運算:

            >
            >=
            <
                     <=
                        ==
                        !=

格式:
x > y
比較規則:
1,字符串x的第一個字母與字符串y的第一個字母比較,如果不相同則直接的到比較結果。如果相同則再去第二個字母進行比較,以此類推,
2,比較的依據是字符的UNICODE編碼值
示例:

    ‘AD‘ > ‘ABC‘        #True
    ‘ABC‘ != ‘CBA‘    #True
    ‘ABC‘ == ‘CBA‘   #False
    ‘AB‘ <= ‘ABC‘      #True

六:
in / not in 運算符
作用:用於序列,字典,集合,等容器中,用於判斷某個值是否存在於容器中,如果存在就返回True,否則返回False
not in 於 in 運算符的返回結果相反,
格式:
對象 in 序列


七:
字符串的索引 index
python的字符串是不可改變的字符序列。
語法:
字符串[整數表達式]
說明:python序列都可以用索引(index)來訪問序列中的對象
python序列的正向索引是從0開始的,第二個索引為1......以此類推,最後一個索引是len(s)-1
python序列的反向索引是從-1開始的,-1代表最後一個,-2代表倒數第二個,以此類推,第一個是-len(s)
示例:

>>s = "ABCD"
>>print(s[0]) #A
>>A
>>print(s[2]) #C
>>C
>>print(s[-1]) #D
>>D


八:
切片 slice
作用:從字符串中取出向應得元素,重新組成一個字符串序列。
語法:
字符串[(開始索引b):(結束索引e)(:(步長s))]
註:小括號()括起的部分代表可以省略。
語法說明:1,開始索引是切片下的位置,0代表第一個元素,1代表第二個元素,-1代表左後一個元素,
2,結束索引是切片的終止索引(但不包括終止點)
3,步長是切片每次獲取完當前元素後向右偏移量
1,沒有步長,相當於取值完畢後右移動一個索引的位置(默認為1)
2,當步長為整數時,最正向索引
3,當步長為負數時,去反向切片
反向切片是,默認的起始位置為最後一個元素,
終止位置是第一個元素的前一個位置。
示例:

>> s = ‘ABCDE‘
>> s[0]
‘A‘
>> s[1]
‘B‘
>> s[2]
‘C‘
>> s[3]
‘D‘
>> s[4]
‘E‘
>> s[5] #沒有第五個,所以報錯
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: string index out of range

>> s = ‘ABCDE‘
>> s[-1]
‘E‘
>> s[-2]
‘D‘
>> s[-3]
‘C‘
>> s[-4]
‘B‘
>> s[-5]
‘A‘

>> s = ‘ABCDE‘
>> s[2:-2]
‘C‘
>> s[:-2]
‘ABC‘
>> s[:-2:2]
‘AC‘
>> s[-1:0:-1]
‘EDCB‘
>> s[-1:-100:-2]
‘ECA‘


九:
python3中常用的序列函數:
len(seq) 返回序列的長度
max(x) 返回序列的最大值
min(x) 返回序列的最小值

字符串編碼轉換函數:
ord(c) 返回一個字符的Unicode值
chr(i) 返回i這個值所對應的字符
示例:

 >>> i = ord(‘中‘)
 >>> i
20013
>>> c= chr(20013)
>>> c
‘中‘
>>> 

十:
整數轉換為字符串函數:

hex(i)  將整數轉換為  十六進制字符串
oct(i)  將整數轉換為   八進制字符串
bin(i)  將整數轉換為 二進制字符串
>>> hex(10)
‘0xa‘
>>> oct(10)
‘0o12‘
>>> bin(10)
‘0b1010‘
>>> 

字符串構造函數:

str(obj=‘‘)     將對象轉換為字符串

python 字符串,字符串運算,比較,索引,切片等