python字串小結

2021-08-15 20:46:55 字數 4970 閱讀 2587

字串:str

作用:用來記錄文字資訊

字串表示方法:在非注釋中凡是用引號括起來的部分是字串

『 』單引號  「」雙引號  ''' 三單引號  「「「三雙引號

空字串字面值的表示方法:『 』 「」  『『『』』』 「「「」」」

空字串的布林值測試值bool(x)為false

非空字串字面值的表示方法:『hello』.....

單引號和雙引號的區別:單引號內可以包含雙引號(雙引號不算結束符)反之相同

例:print(「i'm a teacher」)

print('i am "zhh" ')

三引號字串:三引號字串中的換行會自動轉換為換行符\n ;三引號內可以包含單引號和雙引號

隱式字串字面值拼接:

>>> "i'm"  "a teacher"       # 返回  "i'm a teacher"

用轉義序列代表特殊字元:字串中\後跟一些字元代表特殊含義:

反斜槓字元表  例: \' 代表單個單個單引號  \" 代表單個雙引號   \n 代表換行

\\ 乙個反斜槓  \a 響鈴   \r 返回游標至行首  \t水平製表符

\v 垂直製表符  \f  換頁 \b倒退 \0 空字元,字元值為零

\0oo八進位制表示的字元   \***十六進製制表示的字元

\u***x unicode 16 的十六進製制的字元

\u******xx   unicode 32 的十六進製制的字元

ascii編碼:$ man ascii《回車》

常用的ascii編碼:字元  十進位制 十六進製制

『0』   48     0x30

『a』   65     0x41

『a』   97     0x61

unicode:

『\x41』 十六進製制表示的字元a

『\u0041』 unicode 16 的十六進製制表示的的字元a

『\u00000041』  unicode 32 的十六進製制表示的字元a

len(x) 函式,求字元的個數:

raw 字串(原始字串):格式:r"字串內容"  r'字串內容'    r"'字串內容'"        r"""字串內容"""

作用:讓轉移字元\無效

字串的運算:+ += * *=

+ 加號運算用於拼接字串   例: x = "abcd" +"efg"  print(x)  >>>#  abcdefg

+= 用原字串與右側字串拼接後生產新的字串

例: x = "abcd"    y  = "efg"  x += y #等同於x = x + y

*  運算子生成重複的字串:"a" *5 # aaaaa     

*= 生成重複的字串,同時改變原變數的繫結關係  

例:x = "abc"  x *=3 # x = "abcabcabc"

字串的比較運算:<     <=    >     >=      ==      !=

例:"abc" == """abc"""  # true

in / not in 運算子:

作用:in用於序列,字典,集合中,用於判斷某個值是否存在於物件(通常是容器類物件)中

not in 與 in 的返回值相反

語法格式: 值  in  字串

例: x = "welcome to tarena!"  if "to" in x : print("to 存在於x中")

python運算子優先順序:(自上而下,由高到低)

**             指 數

~ ,+,-       按位反轉,一元正號,一元負號

*,/,//,%    乘,除.....

+, -          加法減法

>>  <<         左移,右移

&              位與

^              位異於

|              位或

< <= > >=  == !=,is, is not,in,not in  比較等。。。。

not            布林非(取非)

and 

orif - else       條件表示式

索引 index

python字串是不可以改變的序列

語法:字串[整數值]

說明:python序列都可以用索引(index)來訪問序列中的內容;序列中的正向索引是從0開始的,第二個索引為1,

最後乙個為len(s)-1

序列的反向索引是從-1開始的,-1代表最後乙個,-2代表倒數第二個,一次類推,第乙個是-len(s)

切片 slice 從字串序列中取出相應的元素,重新組個乙個字串序列

語法:字串[(開始索引) :(結束索引) (:(步長))]  注:()括起的部分代表可以省略

說明:1.開始索引是切片切下的位置,0代表第乙個元素,1代表第二個,...-1代表最後乙個

2.結束索引是切片的終止點(但不包括終止點)

3.步長是切片每次獲取完當前元素後移動的方向和偏移量

3.1沒有步長,相當於取值完成後向右移動位置(預設為1) 

3.2當步長為正數時,取正向切片;當步長預設為1,開始索引預設為0,結束索引預設為len(s)

步長代表下一次索引取值的增長值

3.3當步長為負數時,取反向切片。反向切片時,預設的起始位置為最後乙個元素,

終止位置是第乙個元素的前乙個位置

例:s = "abcde"

a = s[:] # a---- abcde         a = s[2:] # a---- cde          a = s[:2] # a---- ab

a = s[2:4] # a---- cd          a = s[1:1] # a---- ""空         a = s[4:2] # a---- ""空

練習:1.輸入乙個字串,列印這個字串的第乙個字元,中間的字元及最後乙個字元,如果輸入字元數為偶數,則中間字元輸出為『|』

2.輸入任意乙個字串,判斷這個字串是否為回文:上海自來水來自海上  14841回文是指中心對稱的文字

3.用字串*運算子列印矩形,要求輸入乙個整數,此整數代表矩形的寬度

len用於字串的序列函式:

len(x)  返回序列的長度

max(x)  返回序列的最大值元素

min(x)  返回序列的最小值元素

例:s = "abc123"

print(len(s))  # 6

print(max(s))  # c

字串編碼的轉換函式:

ord(str)返回乙個字元的unicode值

chr(i)    返回乙個unicode值對應的字元

例: >>>  ord("張")

24352

>>> ord("行")

34892

>>> chr(24352) 

'張'整數轉為字串函式:

hex(i):將整數轉換為十六進製制的字串

oct(i):將整數轉換為八進位制的字串

bin(i):將整數轉換為二進位制的字串

python3 中常用的字串方法(method):

字串的方法呼叫語法:

物件.方法名 (方法傳參)

例:"abc".isalpha() # 語法是對的

123.isalpha() # 語法是錯的

假設字串變數名為s:

常用字串的方法如下:

s.isdigit()  判斷字串是否全為數字

s.isalpha()  判斷字串是否全為英文本元

s.islower()  判斷字串是否全為小寫英文本元

s.isupper()  判斷字串是否全為大寫英文本元

s.isspace()  判斷字串是否全為空白字元

s.center(width[,fill)            例:s = 123 s.center(7,"#")>>>>>##123##

將原字串居中,左右預設填充空格

s.count(sub[,start[,end]]) 獲取乙個字串中子串的個數

s.find(sub[,start[,end]]) 獲取字串中子串sub的索引,失敗返回-1

s.strip()  返回去掉左右空白字元的字串

s.lstrip()  返回去掉左側空白字元的字串

s.rstrip()  返回去掉右側空白字元的字串

s.title()  生成每個英文單詞首字母大寫的字串

s.upper()  生成將英文轉換為大寫的字串

s.lower()  生成將英文轉換為小寫的字串

s.replace(old,new[,cound] 將字串old用new代替,生成新的字串

空白字元是指空格,水平製表符(\t),換行符(\n)等不可見字元

字串格式化表示式:

作用:生成一定格式的字串  運算子:%

語法:格式字串 % 引數值 或 格式字串 % (引數值1,引數值2,.....)

說明:格式化字串中以%開頭為佔位符,佔位符的位置將用引數值替換

例:fmt = "name: %s,age:%d"

name = "zhangh"

age = 28

print(fmt % (name ,age))

格式化字串中的佔位符:

%s  字串    %r  字串(使用repr而不是str)

%c  整數轉為單個字元     %d  十進位制整數

%o  八進位制整數           %x  十六進製制整數(字元a-f小寫)

%x  十六進製制整數(字元a-f大寫)

%e,%e   指數表示的浮點數

%f,%f 浮點小數

%g%g  十進位制的數或指數浮點數自動轉換

%%  等同於乙個字元%

佔位符%和型別碼之間的格式語法:

- 號   左對齊    + 號   正負號    0 補零

width 寬度    pricisinon 精度 (都是整數)

Python 字串小結

平時敲 的時候字串處理規範,方法和一些小技巧總會記不住,需要現查,這裡mark小結一下 在python中,單引號和雙引號在表示字串沒有區別 str1 python is beautiful str2 python is beautiful print str1 print str2這樣做的優點從上面...

python 字串使用 小結

字串在語言中的使用應該是很廣泛的了吧。使用語言不可能不學習字串,但是字串除了常用的方法還有其他許多的方法,這裡做個小結。一 建立字串 s s a,b test1 test2 二 字串數學操作 加 a,b test1 test2 a b test1test2 乘 a 2 test1test1 test...

字串小結

1.字串概念 字串是位於雙引號中的字串行 在記憶體中以 0 結束,所佔位元組比實際多乙個 2.字串的初始化 在c語言中沒有專門的字串變數,通常用乙個字元陣列來存放乙個字串。前面介紹字串常量時,已說明字串總是以 0 作為串的結束符。因此當把乙個字串存入乙個陣列時,也把結束符 0 存入陣列,並以此作為該...