字串的讀取採用下標引數,定義如下:
str【start:end:step】
注意:字串下標採用左開右閉的原則,也就是說取的字串是start~(end-1)
1、正常引數的例子
1 >>> str="2、如果序列的機尾處超過了原字串的最後乙個索引位置,則採用負數索引。-1指的是最後乙個索引位置,-2為倒數第二個位置字元hhello world
"2 >>>str[0:]3'
hello world
'4 >>> str[6:10]5'
worl
'6 >>> str[:5]7'
hello
'8 >>> str[0:10:2]9'
hlowr
'
ello
worl
d索引01
2345
6789
10-11
-10-9
-8-7
-6-5
-4-3
-2-1
1 >>> str[3:-2]2'3、步長引數預設值為1,當用-1作為步長,意味著從後往前進行lo wor
'3 >>> str[-1]4'
d'5 >>> str[-5:-1]6'
worl
'
1 >>> str[::2]2'4、在數字字串上使用步長,能得到有趣的結果。不同步長和不同起始值,能得到奇數、偶數或者保留數字hlowrd
'3 >>> str[::3]4'
hlwl
'5 >>> str[::-1]6'
dlrow olleh
'7 >>> str[::-2]8'
drwolh
'
1 >>> digits="可以總結一句規律,step 為正表示從左到右切片,反之為右到左。然後根據0123456789
"2 >>> digits[::2]3'
02468
' #偶數
4 >>> digits[1::2]5'
13579
' #奇數
6 >>> digits[::-1]7'
9876543210
' #反轉
8 >>> digits[::-2]9'
97531
' #反轉後的奇數
10 >>> digits[-2::-2]11'
86420
' #反轉後的偶數
index
依次切片
1 >>> a=list(i for i in range(1,11))【擴充套件】2 >>>a
3 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
4 >>>
5 >>> a[8:3:-1]
6 [9, 8, 7, 6, 5] #
右->左切片,step 為1,a[8]=9, a[7]=8, ... a[4]=5, 8-3=5個
7 >>>
8 >>> a[10:0:-2]
9 [10, 8, 6, 4, 2] #
右->左切片, 切片的時候,不存在 index 越界情況,a[10]不存在,a[9]=10, a[7]=8, a[5]=6...
10 >>>
11 >>> a[0:10:-2] #
start < end step 為負, 方向為右->左,第乙個是 a[0], a[0]的左邊就再也沒有值了。為空12
13 >>>
14 >>> a[::-2] #
a[:]表示取所有,step 為負就反方向從右往左取
15 [10, 8, 6, 4, 2]
16 >>>
17 >>> a[5::-2] #
右->左,等價於 a[5:0:-2] a[5]=6, a[3]=4, a[1]=2
18 [6, 4, 2]
19 >>>
20 >>> a[:5:-2] #
右->左, 等價於 a[9:5:-2] a[9]=10, a[7]=8
21 [10, 8]
python strip() 方法用於移除字串頭尾指定的字元(預設為空格或換行符)或字串行。
注意:該方法只能刪除開頭或是結尾的字元,不能刪除中間部分的字元。
1 str1 = "結果為:00000003210runoob01230000000"2
print(str1.strip('
0')) #
去除首尾字元 0
3 str2 = "
, this.
"4 str3 = "
this,,. "5
print(str2.strip('
., '))6
print(str3.strip('
., '))
1ps1:'3210runoob0123'2
'this'3
'this
'
lstrip()、rstrip()和strip()類似,只是僅針對字串開頭和結尾
ps2:
一次性返回字串的索引和值的函式:enumerate()
字串操作 靠字串分割字串
字串分解函式。注意strtok比較複雜。要妥善運用!也可以不用strtok函式,但要實現字串靠字串分割比較困難!注意str指向的空間必須是可讀可寫的 如陣列或動態分配的空間 不能為字串常量的指標,因為strtok改變了其中的內容。include include 功能 將str中的字串按照elemon...
字串的操作
strcpy,sprintf,memcpy的區別 對於字串拷貝來說,其實現的效率和使用的方便程度不同 strcpy 無疑是最合適的選擇 效率高且呼叫方便。snprintf 要額外指定格式符並且進行格式轉化,麻煩且效率不高。memcpy 雖然高效,但是需要額外提供拷貝的記憶體長度這一引數,易錯且使用不...
字串的操作
pragma once define string h include include using namespace std define maxsize 255 typedef struct sstring void initstring sstring s 給字串賦值 void strassi...