String字符串數據類型
字符串是由零個及以上的字符組成的有限序列。使用引号(’或”)來創建字符串。
str = 'This is String'
str2 = "asdfhjldfasl"
str3 = u'我是漢字'
- 字符串一般可分為兩類:一類是普通的字符串,隻用引号聲明;另一類是Unicode字符串,在引号之前加上字母u。
- 技巧:如果字符串中包含漢字,應将其聲明為Unicode字符串。
如何訪問字符串中的值?
對于每個字符串,默認從左邊開始第一個字符給定序号為0(稱為下标),往右序号遞增。如:
'hello world'
# 012345678910 一共十一個字符,包含一個空格
因此,我們可通過下标來訪問字符串中的每個字符。
var = 'hello world'
var2 = var[2]
print(var2) # IDLE屏幕打印出 l
通過切片操作訪問字符串中的部分内容。 切片就是字面意思,從整體切一部分
var = 'hello world'
var3 = var[3:6] # [3:6] 表示從下标3開始取,取到下标5(6-1)
print(var3) # IDLE屏幕打印出 lo 注意後面還有一個空格
字符串更新
如果需要更新字符串,隻能新建一個新的字符串。
str1 = str2 = 'hello world!'
str1 = str1 ' I like Python!'
print(str1) # IDLE屏幕打印出 hello world! I like Python!
Python轉義字符
一些不可顯示的字符,如回車、縮進等,用轉義字符來表示。以 \ 标識。
- \\(在行尾):續行符
- \\:反斜杠 \
- \\’:單引号
- \\”:雙引号
- \\a:響鈴
- \\b:退格(Backspace)
- \\n:換行
- \\r:回車
- \\t:水平制表符(跳到下一個Tab位置)
- \\v:垂直制表符
- \\0:空字符
字符串運算
- :兩個字符串相加,将兩個字符串拼接。
str1 = 'hello'
str2 = 'world'
str1 str2 = 'helloworld'
- *:一個整型數字與字符串相乘,重複輸出字符串。
str1 = 'hello'
print('str1*3: ' str1*3) # str1*3: hellohellohello
- []、[:]:下标索引和切片。
- in:成員運算符 - 如果字符串中包含給定的字符返回 True
- not in:成員運算符 - 如果字符串中不包含給定的字符返回 True
str = 'hello'
print('e' in str) # True
- %s:将字符串格式化
- %c:格式化單個字符
- %d:格式化整數
print('hello %s' % 'world') # hello world
字符串内置函數
,
- count(str, beg=0, end=len(string)):返回str在string中出現的次數,可用beg和end限定搜索範圍。
- find(str, beg=0, end=len(string)):檢測str是否包含在string中,可用beg和end限定搜索範圍,找到則返回str,找不到則返回-1。
- index(str, beg=0, end=len(string)):同find(),但是找不到str則返回異常。
- lower():轉換所有大寫字母為小寫。
- upper():轉換所有小寫字母為大寫。
- len(string):返回字符串長度。
- max(string):返回字符串 string 中ASCII碼最大的字母。
- min(string):返回字符串 string 中ASCII碼最小的字母。
- 其他功能強大的字符串内置函數,查閱官方文檔。