1. 程式人生 > >(1) Python 內建型別 –- 字串

(1) Python 內建型別 –- 字串

述:Python字串 – 一個有序的字元集合,用於儲存和表現基於文字的資訊。

字串

1.1 單引號、雙引號、三引號和轉義引號

單引號和雙引號沒有區別;三重引號編寫多行字串塊;轉義引號代表特殊位元組。

1

2

3

4

5

6

7

8

9

10

11

>>> 'Hello World!'

'Hello World!'

>>> "Hello World!"

'Hello World!'

>>> ''' Hello World!

... I am SK_Lavender!

... '''

' Hello World!\nI am SK_Lavender!\n'

>>> 'Let\'s go!'

"Let's go!"

>>> 

1.2 字串表示,strrepr

str函式 : 把值轉換成合理形式的字串,便於使用者理解。

Repr函式:以合法的Python表示式的形式來表示值。

1

2

3

4

5

6

7

8

9

10

11

12

>>> "Hello World!"

'Hello World!'

>>> 1000L

1000L

>>> print "Hello World!"

Hello World!

>>> print 1000L

1000

>>> print repr("Hello World!")

'Hello World!'

>>> print str("Hello World!")

Hello World!

repr(x)函式也可寫作`x`的形式(`是反引號)

1

2

3

4

5

>>> temp = 42L

>>> print temp

42

>>> print `temp`

42L

基本字串操作

2.1 字串序列操作

2.1.1 字串索引

字串就是由字元組成的序列。索引0指向第一個元素。

1

2

3

>>> greeting = 'hello'

>>> greeting[0]

'h'

使用負數索引時,Python會從右邊,也就是從最後1個元素開始計數。最後1個元素的位置編號是-1

1

2

>>> greeting[-1]

'o'

2.1.2 字串分片

可以使用分片操作來訪問一定範圍內的字串元素。第一個索引的元素包含在分片內,而第二個則不包含在分片內。

1

2

3

4

5

>>> tag = '<a href="http://www.pythom.org">Python web site</a>'

>>> tag[9:30]

'http://www.pythom.org'

>>> tag[32:-4]

'Python web site'

新增步長,其中最後一個數是步長。

1

2

>>> tag[0:-1:2]

'< rf"tp/wwpto.r"Pto e ie/'

2.1.3 字串序列相加

1

2

>>> 'Hello' + ' World!'

'Hello World!'

2.1.4 字串乘法

用一個數字x乘以一個字串會生成一個新的字串。在新的字串中,原來的序列被重複x次。

1

2

>>> 'Hello ' * 4

'Hello Hello Hello Hello '

2.1.5 判斷成員資格

可使用 in 運算子檢查一個值是否在一個字串中。

1

2

3

>>> permissions = 'rw'

>>> 'w' in permissions

True

2.1.6 求長度、最小值和最大值

1

2

3

4

5

6

7

>>> str = 'hello,XLX'

>>> len(str)

9

>>> min(str)

','

>>> max(str)

'o'

2.2 字串是不可變的

1

2

3

4

5

>>> str = 'hello,XLX'

>>> str[0] = 'a'

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

TypeError: 'str' object does not support item assignment

字串格式化

字串格式化使用字串格式化操作符,即百分號%來實現。

%的左側放置一個字串(格式化字串),而右側則放置希望被格式化的值。

1

2

3

4

>>> format = "hello,%s. %s enough for ya?"

>>> values = ('world','Hot')

>>> print format % values

hello,world. Hot enough for ya?

格式化字串的%s部分成為轉換說明符。

基本的轉換說明符包括以下四個部分:、

(1) %字元標記轉換說明符的開始。

(2) 轉換標誌(可選) 表示左對齊;表示在轉換之前要加上正負號;””(空白字元表示正數之前保留空格;表示轉換值若位數不夠則用0填充。

(3) 最小欄位寬度(可選)轉換之後的字串至少應該具有該值指定的寬度。如果是*, 則寬度會從值元組中讀出。

(4) (.)後跟精度值(可選):如果轉換的是實數,精度值表示出現在小數點後的位數。如果轉換的是字串,那麼該數字表示最大欄位寬度。如果是*,那麼精度將會從元組中讀出。

(5) 轉換型別見下表

轉換型別

含義

d,i

帶符號的十進位制整數

o

不帶符號的八進位制

u

不帶符號的十進位制

x

不帶符號十六進位制(小寫)

X

不帶符號十六進位制(大寫)

e

科學計數法表示的浮點數(小寫)

E

科學計數法表示的浮點數(大寫)

f,F

十進位制浮點數

g

如果指數大於-4或者小於精度值則和e相同,其他情況與f相同

G

如果指數大於-4或者小於精度值則和E相同,其他情況與F相同

C

單字元(接受整數或者單字元字串)

r

字串(使用repr轉換任意Python物件)

s

字串(使用str轉換任意Python物件)

3.1 簡單轉換

1

2

3

4

5

6

7

8

9

10

11

12

13

14

>>> 'Price of eggs: $%d' % 42

'Price of eggs: $42'

>>> 'Hexadecimal price of eggs: %x' % 42

'Hexadecimal price of eggs: 2a'

>>> from math import pi

>>> 'Pi: %f....' % pi

'Pi: 3.141593....'

>>> 'Very inexact estimate of pi: %i' %pi

'Very inexact estimate of pi: 3'

>>> 'Using str: %s' % 42L

'Using str: 42'

>>> 'Using repr: %r' % 42L

'Using repr: 42L'

>>> 

3.2 欄位寬度和精度

欄位寬度:轉換後的值所保留的最小字元個數

精度:結果中應該包含的小數位數

兩者通過點號(.)分隔,但是隻給出精度,就必須包含點號。

1

2

3

4

5

6

7

8

9

>>> from math import pi

>>> '%10f' % pi

'  3.141593'

>>> '%10.2f' % pi

'      3.14'

>>> '%.2f' % pi

'3.14'

>>> '%.5s' % 'Guido van Rossum'

'Guido'

可以使用*號作為欄位寬度和精度,此時資料會從元組引數中讀出。

1

2

3

4

5

>>> '%*.*f' % (10,2,pi)

'      3.14'

>>> '%.*s' % (5,'Guido van Rossum')

'Guido'

>>> 

3.3 

相關推薦

(1) Python 型別 –- 字串

概述:Python字串 – 一個有序的字元集合,用於儲存和表現基於文字的資訊。 1 字串 1.1 單引號、雙引號、三引號和轉義引號 單引號和雙引號沒有區別;三重引號編寫多行字串塊;轉義引號代表特

Python 3.7.1 基礎-型別

內建型別 1.真值測試 2.布林運算 3.比較運算子 4.數值型別 4.1 操作運算子 4.2 整數的一些方法 int.bit_length() int.to_bytes(length, byteo

python——型別——整型 浮點型 字串 布林型 空型

整型 十進位制:123,456八進位制:0123,0456十六進位制:0x7abc,0X8def浮點型 十進位制(必須包含小數點):123.456,.123,123.科學計數法(e或E前後必須有值):

python——型別——函式——引數

必選引數 def enroll(name, gender): print 'name:', name, 'gender:', gender enroll('Bob', 'M') enroll

易被忽略的Python型別

Python中的內建型別是我們開發中最常見的,很多人都能熟練的使用它們。 然而有一些內建型別確實不那麼常見的,或者說往往會被我們忽略,所以這次的主題就是帶領大家重新認識這些“不同尋常”的內建型別。 (注意:本文基於python3,不會包含任何python2相關內容) frozenset 不可變集合(fr

Python型別補充

內建型別補充 下面是對Python直譯器中內建的標準型別的一個補充。 Python的主要內建型別有數字、序列、對映、類、例項以及異常。 真值驗證 任何物件都可以作為if或while的條件來做真值驗證,以下情況均為假: None False 數字零,類

Python 型別及其用法

本文講述了Python內建型別。記錄以供學習。具體如下: python內建型別 1、list:列表 (即動態陣列,C++標準庫的vector,但可含不同型別的元素於一個list中) 程式碼如下: a = ["I","you","he","she

Python型別效能分析

timeit模組 timeit模組可以用來測試一小段Python程式碼的執行速度。 class timeit.Timer(stmt=‘pass’, setup=‘pass’, timer=) Timer是測量小段程式碼執行速度的類。 stmt引數是要測試的程式碼

為什麼繼承 Python 型別會出問題?!

> 本文出自“Python為什麼”系列,請檢視[全部文章](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzUyOTk2MTcwNg==&action=getalbum&album_id=1338406397180084225&su

Python基礎學習:型別1

Python中基本內建型別由數字、序列、對映、類、例項和例外。一些集合類是可變的,因此那些可以增添、刪除或排列這些類的方法不會奏效,只會返回None,用來示意函式呼叫者邏輯上的錯誤。但同時,幾乎所有操作都支援幾種典型的函式操作,比如說:比較、真值測試以及用str()或repr

Python序列型別概覽

1.容器序列 list,tuple和collections.deque這些序列能存放不同型別的資料。 2.扁平序列 str,bytes,bytearray,memoryview和array.array。這類序列只能容納一種型別。   扁平序列其實是一

python——資料型別(上)

內建資料三大主要型別:           數字(整數,浮點數)           序列(字串,列表,元組)           對映(字典

python函式彙總(1

原文地址:https://docs.python.org/3/library/functions.html 函式名 功能 abs(number) 返回一個數的絕對值。引數可以是一個整數或浮點數。

Python的序列型別 Python 程式設計規範 —— TODO 註釋(結合 PyCharm)

bytes   list  str  tuple  bytearray 元組和字串都是不可以改變的 ctrl+q pycharm  查詢的是文件  就是在函式的地方  TODO 自然表示需要做而未做的一些待完成的事項,有助於事後的檢索,以及對整體專案做進一步的修改

python 函式型別判斷isinstance的用法以及與type的區別

 type() 方法的語法: type(object) type(name, bases, dict) 引數  返回值 name -- 類的名稱。 bases -- 基類的元組。 dict -- 字典,類內定義的名稱空間變數。 一個引數返回物件型別, 三個引數

python學習筆記1:變數+資料型別+字串

變數 大駝峰:首字母均大寫,一般用於給類命名 MathTeacher 小駝峰:第一個單詞的首字母大寫,其餘小寫,一般給普通變數或函式命名 numOne posix: 單詞全部小寫,用下劃線連線,推薦此方法 num_one&nb

python 方法(1)

abs(x) 返回一個數的絕對值。可以是長整型,小數等等。 >>> abs(-9) 9 >>> abs(-0.9) 0.9 >>>

python字串函式

name='lassYW' print(name.capitalize()) #首字母大寫 print(name.swapcase())#大小寫翻轉 text='las yan lei' print(text.title())#每個單詞首字母大寫 print(text.center(60,"*"

python 資料結構的基本操作 —— tuple(1

We saw that lists and strings have many common properties, such as indexing and slicing operations. They are two examples of sequen

python 資料結構的基本操作 —— Set(1

Python also includes a data type for sets. A set is an unordered collection with no duplicate elements. Basic uses include membersh