1. 程式人生 > >字串介紹,輸出,輸入,下標和切片,常見操作

字串介紹,輸出,輸入,下標和切片,常見操作

<1>python中字串的格式
如下定義的變數a,儲存的是數字型別的值

a = 100

如下定義的變數b,儲存的是字串型別的值

b = "hello itcast.cn"
或者
b = 'hello itcast.cn'

小總結:

雙引號或者單引號中的資料,就是字串

輸出
demo

name = 'itheima'
position = '講師'
address = '北京市昌平區建材城西路金燕龍辦公樓1層'

print('--------------------------------------------------')
print("姓名:%s" % name)
print("職位:%s" % position)
print("公司地址:%s" % address)
print('--------------------------------------------------')

結果:

--------------------------------------------------
姓名: itheima
職位: 講師
公司地址: 北京市昌平區建材城西路金燕龍辦公樓1層
--------------------------------------------------

字串輸入
之前在學習input的時候,通過它能夠完成從鍵盤獲取資料,然後儲存到指定的變數中;

注意:input獲取的資料,都以字串的方式進行儲存,即使輸入的是數字,那麼也是以字串方式儲存

demo:

userName = input('請輸入使用者名稱:')
print("使用者名稱為:%s" % userName)

password = input('請輸入密碼:')
print("密碼為:%s" % password)

結果:(根據輸入的不同結果也不同)

請輸入使用者名稱:itheima
使用者名稱為: itheima
請輸入密碼:haohaoxuexitiantianxiangshang
密碼為: haohaoxuexitiantianxiangshang

下標和切片

  1. 下標索引
    所謂“下標”,就是編號,就好比超市中的儲存櫃的編號,通過這個編號就能找到相應的儲存空間

生活中的 “下標”

超市儲物櫃
在這裡插入圖片描述

高鐵二等座
在這裡插入圖片描述

高鐵一等座
在這裡插入圖片描述

綠皮車
在這裡插入圖片描述

字串中"下標"的使用

列表與元組支援下標索引好理解,字串實際上就是字元的陣列,所以也支援下標索引。

如果有字串:name = ‘abcdef’,在記憶體中的實際儲存如下:
在這裡插入圖片描述

如果想取出部分字元,那麼可以通過下標的方法,(注意python中下標從 0 開始)

name = ‘abcdef’

print(name[0])
print(name[1])
print(name[2])
執行結果:

a
b
c
2. 切片
切片是指對操作的物件擷取其中一部分的操作。字串、列表、元組都支援切片操作。

切片的語法:[起始:結束:步長]
注意:選取的區間從"起始"位開始,到"結束"位的前一位結束(不包含結束位本身),步長表示選取間隔。

我們以字串為例講解。

如果取出一部分,則可以在中括號[]中,使用:

 name = 'abcdef'

 print(name[0:3]) # 取 下標0~2 的字元

執行結果:
在這裡插入圖片描述

 name = 'abcdef'

 print(name[0:5]) # 取 下標為0~4 的字元

執行結果:
在這裡插入圖片描述

 name = 'abcdef'

 print(name[3:5]) # 取 下標為3、4 的字元

執行結果:
在這裡插入圖片描述

 name = 'abcdef'

 print(name[2:]) # 取 下標為2開始到最後的字元

執行結果:
在這裡插入圖片描述

 name = 'abcdef'

 print(name[1:-1]) # 取 下標為1開始 到 最後第2個  之間的字元

執行結果:
在這裡插入圖片描述

a = “abcdef”
a[:3]
‘abc’

a[::2]
‘ace’

a[5:1:2]
‘’

a[1:5:2]
‘bd’

a[::-2]
‘fdb’

a[5:1:-2]
‘fd’

字串常見操作
如有字串mystr = ‘hello world itcast and itcastcpp’,以下是常見的操作

<1>find
檢測 str 是否包含在 mystr中,如果是返回開始的索引值,否則返回-1

mystr.find(str, start=0, end=len(mystr))
在這裡插入圖片描述

在這裡插入圖片描述

<2>index
跟find()方法一樣,只不過如果str不在 mystr中會報一個異常.

mystr.index(str, start=0, end=len(mystr))
在這裡插入圖片描述

<3>count
返回 str在start和end之間 在 mystr裡面出現的次數

mystr.count(str, start=0, end=len(mystr))
在這裡插入圖片描述

<4>replace
把 mystr 中的 str1 替換成 str2,如果 count 指定,則替換不超過 count 次.

mystr.replace(str1, str2, mystr.count(str1))
在這裡插入圖片描述

<5>split
以 str 為分隔符切片 mystr,如果 maxsplit有指定值,則僅分隔 maxsplit 個子字串

mystr.split(str=" ", 2)
在這裡插入圖片描述

<6>capitalize
把字串的第一個字元大寫

mystr.capitalize()
在這裡插入圖片描述

<7>title
把字串的每個單詞首字母大寫

a = “hello itcast”
a.title()
‘Hello Itcast’
<8>startswith
檢查字串是否是以 hello 開頭, 是則返回 True,否則返回 False

mystr.startswith(hello)
在這裡插入圖片描述

<9>endswith
檢查字串是否以obj結束,如果是返回True,否則返回 False.

mystr.endswith(obj)
在這裡插入圖片描述

<10>lower
轉換 mystr 中所有大寫字元為小寫

mystr.lower()
在這裡插入圖片描述

<11>upper
轉換 mystr 中的小寫字母為大寫

mystr.upper()
在這裡插入圖片描述

<12>ljust
返回一個原字串左對齊,並使用空格填充至長度 width 的新字串

mystr.ljust(width)
在這裡插入圖片描述

<13>rjust
返回一個原字串右對齊,並使用空格填充至長度 width 的新字串

mystr.rjust(width)
在這裡插入圖片描述

<14>center
返回一個原字串居中,並使用空格填充至長度 width 的新字串

mystr.center(width)
在這裡插入圖片描述

<15>lstrip
刪除 mystr 左邊的空白字元

mystr.lstrip()
在這裡插入圖片描述

<16>rstrip
刪除 mystr 字串末尾的空白字元

mystr.rstrip()
在這裡插入圖片描述

<17>strip
刪除mystr字串兩端的空白字元

a = “\n\t itcast \t\n”
a.strip()
‘itcast’
<18>rfind
類似於 find()函式,不過是從右邊開始查詢.

mystr.rfind(str, start=0,end=len(mystr) )
在這裡插入圖片描述

<19>rindex
類似於 index(),不過是從右邊開始.

mystr.rindex( str, start=0,end=len(mystr))
在這裡插入圖片描述

<20>partition
把mystr以str分割成三部分,str前,str和str後

mystr.partition(str)
在這裡插入圖片描述

<21>rpartition
類似於 partition()函式,不過是從右邊開始.

mystr.rpartition(str)
在這裡插入圖片描述

<22>splitlines
按照行分隔,返回一個包含各行作為元素的列表

mystr.splitlines()
在這裡插入圖片描述

<23>isalpha
如果 mystr 所有字元都是字母 則返回 True,否則返回 False

mystr.isalpha()
在這裡插入圖片描述

<24>isdigit
如果 mystr 只包含數字則返回 True 否則返回 False.

mystr.isdigit()
在這裡插入圖片描述

<25>isalnum
如果 mystr 所有字元都是字母或數字則返回 True,否則返回 False

mystr.isalnum()
在這裡插入圖片描述

<26>isspace
如果 mystr 中只包含空格,則返回 True,否則返回 False.

mystr.isspace()
在這裡插入圖片描述

<27>join
mystr 中每個元素後面插入str,構造出一個新的字串

mystr.join(str)
在這裡插入圖片描述

想一想
(面試題)給定一個字串aStr,返回使用空格或者’\t’分割後的倒數第二個子串
在這裡插入圖片描述