python中,對字串的操作是最常見的,python對字串操作有自己特殊的處理方式。
字串的擷取
python中對於字串的索引是比較特別的,來感受一下:
字串的查詢s = '123456789'
#擷取中間的兩個字元
s[1:3]
#輸出為:'23'
#從某個位置到結尾
s[4:]
#輸出為:'56789'
#字串的順序不僅僅可以順著數,也可以逆著數
s[-8:7]
#輸出為'234567',這個在擷取檔名稱時是比較有用的,比如用s[-3:],可以得到最後三位的字串。
查詢當前字串中,是否包含另外的字串。
我們可以使用 index,或者find來進行查詢,find和index的區別是,如果使用的是index的話,字串查詢中,如果找不到相應的字串,會丟擲乙個valueerror的異常。
分割字串s = '123456789'
s.index('23')
#輸出:1
s.find('23')
#輸出:1
s.index('s')
#輸出traceback (most recent call last):
file "", line 1, in valueerror: substring not found
s.find('s')
#輸出 -1
總是有很多特殊字元,可以用來分割字串。資料庫中經常把一組**放在乙個欄位中,比如
需要把不定長的**都取出來,就需要同特殊字元把字串分開,得到不同的**。
分割的命令為split
#結果為乙個數值:['img1.jpg', 'img2.jpg', 'img3.jpg']python 支援格式化字串的輸出 。儘管這樣可能會用到非常複雜的表示式,但最基本的用法是將乙個值插入到乙個有字串格式符 %s 的字串中。
在 python 中,字串格式化使用與 c 中 sprintf 函式一樣的語法。
python字串格式化符號:#!/usr/bin/python
print "my name is %s and weight is %d kg!" % ('zara', 21)
#以上例項輸出結果: my name is zara and weight is 21 kg!
符 號描述
%c格式化字元及其ascii碼
%s格式化字串
%d格式化整數
%u格式化無符號整型
%o格式化無符號八進位制數
%x格式化無符號十六進製制數
%x格式化無符號十六進製制數(大寫)
%f格式化浮點數字,可指定小數點後的精度
%e用科學計數法格式化浮點數
%e作用同%e,用科學計數法格式化浮點數
%g根據值的大小決定使用%f活%e
%g作用同%g,根據值的大小決定使用%f活%e
%p用十六進製制數格式化變數的位址
在python中template可以將字串的格式固定下來,重複利用。
template屬於string中的乙個類,要使用他的話可以用以下方式呼叫:
from string import template
我們使用以下**:
執行結果顯示「there dollar is 12」>>> s = template('there $ is $')
>>> print s.substitute(moneytype = 'dollar',money=12)
這樣我們就可以替換其中的資料了。
更多入門教程可以參考:[ (
python字串擷取
a1xy72ce03eb0710 for val in handid print val a1xy72ce03eb0710 print str val 1 2 擷取第一位 下標從0開始 到 倒數第二位之前 a1xy72ce03eb0710 參考str 0123456789 print str 0 3...
python字串擷取
str 0123456789 print str 0 3 擷取第一位到第三位的字元 012print str 擷取字串的全部字元 0123456789 print str 6 擷取第七個字元到結尾 6789 print str 3 擷取從頭開始到倒數第三個字元之前 0123456 print str...
Python 字串擷取
python中常見的字串擷取操作,如果熟悉之後對寫 很有幫助,因此作如下記錄 python程式 str 123456789abcdefg strjoin1 str 3 str 7 8 str 6 正序擷取 取0 3位前,取7 8位前,取7位及以後 strjoin2 str 2 str 7 逆序擷取 ...