1. 程式人生 > >Python(四)字符串

Python(四)字符串

字符串

轉義符號

\n 代表換行符

\t 代表tab符

\" 代表雙引號本身

\' 代表單引號本身

>>> print "sunny,"ok""
File "<stdin>", line 1
print "sunny,"ok""
^
SyntaxError: invalid syntax
>>> print "sunny,\"ok\""
sunny,"ok"

字符串類型轉換

str(obj) 將其他類型內容轉換為字符串
int(obj) 將字符串轉換為為整數
float(obj) 將字符串轉換為浮點型
long(obj) 將字符串轉換為長整型

字符串操作

字符串屬於序列,序列支持的操作如下:

一、索引

? 索引(s[i] ):獲取特定偏移的元素
? 給出一個字符串,可輸出任意一個字符,如果索引為負數,就是相當於從後向前數。

>>> s='hello'
>>> s[0]
'h'

>>> s[-1]
'o'
>>> s[0]+s[1]
'he'
二、切片

切片S[i:j]提取對應的部分作為一個序列:

?上邊界並不包含在內;
?如果沒有給出切片的邊界,切片的下邊界默認為0,上邊界為字符串的長度;

?擴展的切片S[i:j:k],其中i,j含義同上,k為遞增步長;

s[:]獲取從偏移量為0到末尾之間的元素

s[1:]獲取從偏移量為1到末尾之間的元素

>>> num='abcdefgh'
>>> num[0:2]
'ab'
>>> num[0:6:2]
'ace'
>>> num[:]
'abcdefgh'
>>> num[1:]
'bcdefgh'
>>> num[::-1] #表示倒序顯示所有元素


'hgfedcba'
三、成員操作符(判斷子串)

判斷一個字符串是不是屬於s字符串

>>> a='hello'
>>> 'o' in a
True
>>> 'o' not in a
False
四、連接操作符

>>> a='hello'
>>> b='world'
>>> a+b
'helloworld'
五、重復操作符

>>> "$"*10 #將$重復顯示10次
'$$$$$$$$$$'


>>> print "#"*10 + "管理系統" + "#"*10
##########管理系統##########
六、計算長度

>>> a='hello'
>>> len(a)
5
字符串常用操作

str.capitalize()
- 將字符串首字母大寫,並返回新的首字母大寫後的字符串;

技術分享圖片

tr.center(width[,fillchar])
- 返回一個長為width的新字符串,在新字符串中原字符居中,其他部分用fillchar指定的符號填充,未指定時通過空格填充。

技術分享圖片

tr.count(sub[, start[, end]]) -> int
- 返回sub在str中出現的次數,如果start與end指定,則返回指定範圍內的sub出現次數。

技術分享圖片

str.endswith(suffix[, start[, end]])
- 判斷字符串是否以suffix結束,如果start和end指定,則返回str中指定範圍內str子串是否以suffix結尾,如果是,返回True;否則返回False
str.startswith(prefix[, start[, end]])

技術分享圖片

tr.find(sub[,start[,end]])
- 判斷sub是否在str中,存在返回索引值,不存在返回-1.
str.index(sub[,start[,end]])
- 與find方法函數功能相同,如果sub不存在時拋出ValueError異常;

str.isalnum() //判斷是否都是字母或數字
str.isalpha() //判斷是否都是字母
str.isdigit() //判斷是否都是數字
str.islower() //判斷是否都是小寫
str.isspace() //判斷是否都是英文空格
str.istitle() //判斷是不是都是標題(有大小寫)
str.isupper() //判斷是不是都為大寫字母
str.join(seq)
- 以str作為分隔符,將序列seq中的所有元素合並為一個新的字符串。

技術分享圖片

str.replace(old,new[,count])
- 將str中的old字符串替換為new字符串,並將替換後的新字符串返回,如果count指定,則只替換前count個字符串

In [64]: s="h e llo"
In [65]: s.replace(" ","")
Out[65]: 'hello'

tr.split([sep[,maxsplit]])
- 以sep字符串作為分割符對str進行切割,默認為空格;
- maxsplit代表切割的此處

In [66]: a="admin redhat centos"
In [67]: a.split()
Out[67]: ['admin', 'redhat', 'centos']

str.strip([chars])
- 返回一字符串,將str中首尾包含指定的chars字符刪除的字符串,未指定時,刪除首尾的空格。

str.lower() //將大寫字母轉換為小寫

str.upper() //將小寫字母轉換為大寫


Python(四)字符串