python string类型_Python的基本数据类型——String
Python的基本數(shù)據(jù)類型——String
String是一個Unicode字符序列,是Python中最重要的數(shù)據(jù)類型之一,可以使用單引號、雙引號、三引號創(chuàng)建創(chuàng)建一個字符串
a='1234'
b="hello world"
c='''hello world 1234'''
既然單引號、雙引號、三引號都可以創(chuàng)建字符串,那么他們的區(qū)別在哪呢?
# 單引號、雙引號沒有太大的區(qū)別
# 但是如果我們想輸出 what's up ? 這樣中間帶有單引號的字符串時就要使用雙引號
a='hello world'
# 輸出 hello world
b="what's up ?"
# 輸出 what's up ?
# 如果我們輸出一篇文章或者換行的時候可以試試三引號
c='''hello worldhello world'''
# 輸出
hello world
hello world字符串中的轉義字符
如何使用python打印這樣一段字符串'D:Download/note/notebook',使用print()直接能打印出來嗎?我們來演示一下
a='D:Download\note\notebook'
print(a)
# 輸出結果
D:Download
ote
otebook
結果不僅少了兩個\n而且還換行了,這是因為\n是轉義字符,會被當成換行符。
轉義字符在字符串中使用的很廣泛,下面我們通過代碼了解一下轉義字符以及用法
# 我們使用兩種方式打印完整的路徑
a='D:Download\note\notebook'
# 通過在\n前面添加\
print('D:Download\\note\\notebook')
# 在字符串前添加r或R
print(r'D:Download\note\notebook')
# 讓hello world換行
a='hello world'
print('hello\nworld')
python中支持的轉義字符有以下幾種怎么訪問字符串中的字符
可以通過切片、索引訪問字符串中的字符,和大多數(shù)語言一樣,索引是從0開始并且必須是整型
我們先來看看索引的使用方式
a='Hello world,你好 世界'
# 獲取第一個字符
print(a[0])
# 輸出 H
# 獲取w
print(a[6])
# 輸出 w
# 在python中空格也算是一個字符,所以是索引是6而不是5
# 獲取最后一個字符串界
print(a[16])
# 這段字符串比較短,你可以數(shù)出來,但是如果是一篇文章呢
# 所以python中還提供了一種簡單的方式:負數(shù)
print(a[-1]) # 界
print(a[-2]) # 世
# 注意:通過索引訪問時,如果索引不存在將會報錯,如下
print(a[50])
Traceback (most recent call last):
File "", line 1, in
IndexError: string index out of range
通過上面索引的方式我們可以獲取字符串中的某個字符,但是如果我們想獲取多個字符怎么解決呢?這個時候就要使用切片了
a='Hello world,你好 世界'
# 獲取'Hello world'
print(a[0:11])
# 獲取'你好 世界'
print(a[12:17])
# 通過上面的索引,我們可以嘗試使用切片用負數(shù)獲取最后一個字符
# 獲取 '你好 世界'
print(a[-5:])
# 和上面類型的寫法還有以下幾種
print(a[:-6])
# 輸出 Hello world
print(a[5:])
# 輸出 world,你好 世界
下面圖可以便于記憶和理解便于理解
思考一下:通過不存在的索引訪問字符串會報錯,在切片中范圍不存在,會怎么樣呢?這個留給大家有空測試一下
小結:通過上面幾個案例,我們可以總結以下結論字符串中的索引從0開始
索引和切片中都可以使用負數(shù),表示倒數(shù)第幾個
* 切片中冒號前后的數(shù)字可以省略一個,分別表示從頭到...或者從...到結束字符串的一些基本操作字符串的合并
a='hello'
b='world'
# 合并兩個字符串
print(a+b)
helloworld
# helloworld中間加空格
print(a+' '+b)
# 輸出10個hello
print(a+a+a+a+a+a+...)
# 這里我們可以使用乘法,就不用加10次了
print(a*10)
hellohellohellohellohellohellohellohellohellohello
# 上面的結果可能不是我們想要
# 那問題來了
# 這10個hello里面如何添加空格或逗號呢
print((a+' ')*10)
hello hello hello hello hello hello hello hello hello hello
小思考:通過上面的案例我們知道字符串可以相加、可以和數(shù)字相乘
那字符串和字符串能相乘嗎?字符串和0相乘又是什么呢?
a='Hello'
b='World'
print(a*b)
print(a*0)
.
.
.
a*b
# 會報錯,告訴我們字符串不能和字符串相乘
TypeError: can't multiply sequence by non-int of type 'str'
a*0
# 輸出 空
# 可以通過下面兩個函數(shù)判斷具體輸出內(nèi)容
# 判斷字符串的長度
print(len(a*0))
0
# 判斷字符串的類型
print(type(a*0))
str
字符串的一些常用方法in 、not in判斷字符串中是否包含指定的字符
# 判斷 hello 是否存在于hello world
a='hello'
b='hello world'
print(a in b)
# 輸出 True
# 判斷 hello 是否不存在于 hello world
print(a not in b)
# 輸出 False.capitalize() 首字母轉為大寫其他英文字母轉為小寫
a='hELLO WORLD 12345'
print(a.capitalize())
# 輸出 Hello world 12345.swapcase() 大寫轉為小寫,小寫轉為大寫
a='hELLO world'
print(a.swapcase())
# 輸出 Hello WORLD.lower() 全部轉為小寫
a='hELLO WORLD 12345'
print(a.lower())
# 輸出 hello world 12345.upper() 全部轉為大寫
a='hello World'
print(a.upper())
# 輸出 HELLO WORLD.title() 每個單詞的首字母轉為大寫
a='this is an apple'
print(a.title())
# 輸出 This Is An Apple.count() 統(tǒng)計字符串中字符出現(xiàn)的次數(shù)
# .count([, [, ]])
a='Hello worLd'
# 'l'在字符串中出現(xiàn)的次數(shù)
print(a.count('l'))
# 輸出 2 大寫的不會被統(tǒng)計
# 'o'在字符串0-5之前出現(xiàn)的次數(shù)
print(a.count('o',0,5))
# 輸出 1.endswith() 判斷字符串是否以某字符結尾
# .endswith([, [, ]])
a='Hello world'
# 判斷是否以'world'結尾
print(a.endswith('world'))
# 輸出 True
# 判斷'Hello' 是否以'w'結尾
print(a.endswith('w',0,5)).startswith() 判斷字符串是否以某字符開頭
# .startswith ([, [, ]])
a='Hello world'
# 判斷是否以'world'開頭
print(a.startswith('world'))
# 輸出 False
# 判斷'Hello' 是否以'H'開頭
print(a.startswith('H',0,5))
# 輸出 True.find() 查找字符串的位置
# find([, [, ]])
a='Hello world'
# 查找'world'在字符串中的位置
print(a.find('world'))
# 輸出 6
# 如果查找的對象不存在則返回-1
print(a.find('Worlds'))
# .index()的使用方法和功能類似,但是.index() 查找不到會報錯.center() 給字符串前后添加空格或字符并讓給定字符串居中
a='Hello world'
print(a.center(20))
# 輸出 ' Hello world '
print(a.center(20,'='))
# 輸出 ====Hello world=====
# 注意給定的長度必須大于字符串的長度
print(a.center(5,'='))
# 這樣就沒有效果.replace() 替換給定字符
# .replace(, [, ])
a='Hello world'
print(a.replace('world','python'))
# 輸出 Hello python.strip() 刪除前后空格或移除前后給定字符
a=' Hello world '
# 刪除前后空格
print(a.strip())
# 輸出 Hello world
# 移除給定字符
print(a.strip('Hd'))
# 輸出 ello worl
關于字符串轉化list和string的相互轉化,會在后面分享
本篇字符串的分享到這里就結束了,字符串的方法還有很多,不一定要全部記住背會,先大致了解有個印象,在日后使用的時候再去查找,用的多了自然就記住啦
總結:本篇分享知識點很多,重點掌握字符串的索引和切片使用方法,關于字符串中的轉義字符多多練習應該是沒什么問題,python為字符串提供了大量的方法,先大致有個了解,可以方便日后查詢
總結
以上是生活随笔為你收集整理的python string类型_Python的基本数据类型——String的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OpenDDS通讯rtps_discov
- 下一篇: python 管道队列_20.2、pyt