Python學習之路10 認識字串

2021-10-12 22:38:24 字數 3478 閱讀 4036

字串是最常用的資料型別,一般使用引號來建立。

我們可以先來乙個例子來看看,以前學習過通過使用type來檢測**的資料型別,可見「hello world」是「str」型別,即字串型別。

a = 'hello world'

print(a)

print(type(a))

輸出的是:

hello world

如下所示,三種都是字串的寫法。

a = 'hello my name is cat'

b = "hello my name is cat"

c = """hello my name is cat"""

d = '''hello my name is cat'''

1、先來講講 單引號:

單引號正常書寫是這樣的:a = 『hello my name is cat』,那我要是換個行,看看效果:

a = 'hello ' \

'my name is cat'

print(a)

print(type(a))

單引號換行,會有乙個換行符展示,但是最終輸出的內容與不換行是沒有區別的:

hello my name is cat

2、雙引號:

正常雙引號書寫格式是:b = 「hello my name is cat」,對雙引號換行試試:

b = "hello " \

"my name is cat"

print(b)

print(type(b))

雙引號換行,輸入輸出的內容與單引號換行一樣,結果都是沒變化的:

hello my name is cat

3、最後就是三引號了:

三引號書寫有兩種,單三引跟雙三引:

c = """hello my name is cat"""

d = '''hello my name is cat'''

那麼來看看換行,是怎麼樣的。

c = """hello

my name is cat"""

print(c)

print(type(c))

雙三引號換行,輸出的內容也跟著換行了,但是會首行縮排乙個字元:

hello

my name is cat

再看下單三引號:

d = '''hello 

my name is cat'''

print(d)

print(type(d))

單三引號換行,輸出的內容也跟著換行了,但是首行不會縮排字元:

hello 

my name is cat

三、 字串的輸入輸出
name = 'cat'

print('我的名字叫'name'')

當然咯,我這裡輸出肯定爆粗了。翻了下以前的筆記,才回想起,原來輸入輸出是這麼寫的。

1、字串的輸出:%s

name = 'cat'

print('我的名字叫%s'%name)

#或者是下面這種:

print(f'我的名字叫')

2、字串的輸入:input

把以前的例子拿出來看下

a = input("請輸入登入賬號:")

print(a)

那麼最後輸出的結果如下,當然,這裡輸入的是啥,最後結果就是啥。比如我輸入1就是1。

請輸入登入賬號:1

1

對於字串的輸入,這裡input 的所有內容,最終都會是字串型別的資料。這個點要記住。

「下標」,在程式中又叫「索引」,也叫「索引值」。

簡單理解「下標」就是取字串中的某一位。

舉個例子理解下:

a = 0123456789

name = cat

現在「name = cat」,當我們要輸出cat的時候,直接print即可。

name = 'cat'

print(name)

但是,我就想取「cat」中的「a」,怎麼拿?這就用到下標了。

資料,是儲存在記憶體中。記憶體中的資料,都是按序排列的。比如「cat」,排列出來的順序就是012(資料中的資料都是從0開始排列的)。

那我想取「cat」中的「a」,這個時候用下標就能取到啦。

1、下標的語法

下標:字串

name = 'cat'

print(name[1])

這樣就拿到「a」啦~

那我想取「at」,我這樣操作了下

name = 'cat'

print(name[12])

很遺憾,error。

五、 字串的「切片」

上面學習了下標,是取字串中的某一位,那要取多位的,就是「切片」。

1、切片的語法是:字串[開始位置下標:結束位置下標:步長]注意,這裡的是左閉右開。

舉個例子:

a = '0123456789'

print(a[1:7:1])

那麼最終輸出的是「123456」。

a[1:7:1],意思就是從1開始取,取到7,但是不包含7,步長是1位,意思就是下一位。

a = '0123456789'

print(a[1:7:1]) # 輸出是:123456

print(a[1:7:2]) # 輸出是:135

print(a[1:7:]) # 輸出是:123456,當步長不寫,會預設取1

print(a[:7:1]) # 輸出是:0123456,不寫開始,那就從第一位取

print(a[1::1]) # 輸出是:123456789,不寫結束,那就取到最後一位

print(a[::1]) # 輸出是:0123456789,不寫開始和結束,那就取所有

關於負數:

print(a[::-1]) # 輸出是:9876543210,當步長為負數,則倒敘排列

print(a[-6:-1]) # 輸出是:45678,就是從倒數第6位開始,不包含倒數第一位結束。

print(a[-1:-3:1]) # 輸出無結果,因為-1到-3數從右到左的順序,但是步長1是從左到右的順序,當開始結束與步長的順序衝突,是沒有結果的。

print(a[-1:-3:-1]) # 輸出:98,當開始結束與步長的順序不衝突就是ok的。

所以,關於切片,要記住兩點:

好啦,今天學習了字串的輸入、輸出、下標、切片。

Python 認識字典

字典就是一系列的鍵 值 key value 對。d 鍵 key 是唯一的。是不可變的,如字串,數字,元組。值 value 可以取任何資料型別。建立乙個字典 dict print dict 結果 訪問字典中的值 指定相應的鍵放入到方括號中 注意 若用字典裡沒有的鍵訪問,會報錯誤 dict print ...

Python學習之路10 數字

數字提供了標量儲存和直接訪問。數字是不可更改型別,也就是說變更數字的值會生成新的物件。python支援多種數字型別 整型 長整型 布林型 雙精度浮點型 十進位制浮點型和複數。可以通過賦值來建立或更新數字物件。建立數字物件 如 var 1 更新數字物件 如 var 2 刪除數字物件 如 del var...

Python學習之路10 內建方法

id obj,返回物件的標識,這個標識對每個物件而言是唯一的 type object 返回物件的類別 a 10 b 0.5 c type a class int type b class float type c class list type len class builtin function ...