字符串
字符串:編程語言中姆另,用于描述數(shù)據(jù)信息的一段字符
代碼中的字符串:包含在一對(duì)引號(hào)中的多個(gè)字符/三引號(hào)中的多個(gè)字符
s1 = "這是一個(gè)字符串"
s2 = '這也是一個(gè)字符串'
s3 = """
這是一個(gè)長(zhǎng)字符串
支持換行
在某些情況下,可以當(dāng)成(文檔)注釋使用[不賦值]
文件的開頭鸣戴、函數(shù)的開頭、類型的開頭
"""
s4 = "這是一個(gè)'特殊'的字符串粘拾,單引號(hào)和雙引號(hào)可以交叉使用"
s41 = '單引號(hào)字符串中可以"直接包含"雙引號(hào)'
# 轉(zhuǎn)義:轉(zhuǎn)變?cè)瓉淼暮x窄锅,符號(hào): \
# \t:將一個(gè)普通的字符t,轉(zhuǎn)變成tab制表符
# \n:講一個(gè)普通的字符n缰雇,轉(zhuǎn)變成換行符
# \r:將一個(gè)普通的字符r入偷,轉(zhuǎn)換成回車符
s5 = "這又是一個(gè)\"特殊\"的字符串追驴,雙引號(hào)中就想用雙引號(hào),轉(zhuǎn)義字符"
轉(zhuǎn)義:轉(zhuǎn)變?cè)瓉淼暮x疏之,符號(hào): \
1.\t將一個(gè)普通的字符t氯檐,轉(zhuǎn)變成tab制表符
- \n:講一個(gè)普通的字符n,轉(zhuǎn)變成換行符
3.\r:將一個(gè)普通的字符r体捏,轉(zhuǎn)換成回車符
字符串的拼接操作
字符串的拼接操作:
字符串可以進(jìn)行運(yùn)算
-
將字符串s重復(fù)10次賦值給s1
2.# 兩個(gè)字符串可直接通過連接符號(hào)+拼接
字符串類型不可以和其他類型直接拼接
字符穿的特殊拼接:占位符拼接
(1)字符串占位
(2)整數(shù)占位
(3)浮點(diǎn)數(shù)占位
# 1. # 將字符串s重復(fù)10次賦值給s1
s = "hello"
s1 = s * 10
print(s1)
# 2.# 兩個(gè)字符串可直接通過連接符號(hào)+拼接
s2 = "world"
s3 = s1 + s2
# 3. 字符串類型不可以和其他類型直接拼接
# i1 = 10
# s4 = s + i1
# print(s4) # TypeError: must be str, not int
# 4. 字符穿的特殊拼接:占位符拼接
# 字符串占位
name = input("請(qǐng)輸入您的姓名:")
s5 = "welcome to China, my name is " + name
s6 = "welcome to china, my name is %s" % name
s7 = "hello my name is %s, %s years old!" % (name, 18)
# 整數(shù)占位
s9 = "this goods%% is ¥%d" % 100
print(s9)
# 浮點(diǎn)數(shù)占位
s10 = "圓周率是%.10f" % 13.1415926
print(s10)
字符串函數(shù)
字符串函數(shù):python系統(tǒng)內(nèi)置的對(duì)字符串的各種操作的支持
['capitalize', 'casefold',
'center', 'count', 'encode', 'endswith',
'expandtabs', 'find', 'format', 'format_map',
'index', 'isalnum', 'isalpha', 'isdecimal',
'isdigit', 'isidentifier', 'islower',
'isnumeric', 'isprintable', 'isspace',
'istitle', 'isupper', 'join', 'ljust',
'lower', 'lstrip', 'maketrans', 'partition',
'replace', 'rfind', 'rindex', 'rjust',
'rpartition', 'rsplit', 'rstrip', 'split',
'splitlines', 'startswith', 'strip', 'swapcase',
'title', 'translate', 'upper', 'zfill']
# capitalize首字母大寫 upper大寫 lower小寫 capitalize 首字母大寫 upper 大寫 lower小寫 istitle是否首字母大寫
# istitle是否首字母大寫 isupper是否大寫 islower是否小寫
# s1 = "Hello"
# s2 = "jerry"
# s3 = "SHUKE"
#
# print(s1.capitalize(), s1.upper(), s1.lower())
# print(s1, s1.istitle(), s1.isupper(), s1.islower())
# print(s2, s2.istitle(), s2.isupper(), s2.islower())
# print(s3, s3.istitle(), s3.isupper(), s3.islower())
# 對(duì)齊方式和剔除空格
s = "hello"
s.center(10) # s在操作的時(shí)候,占用10個(gè)字符糯崎,居中對(duì)其
s.center(11, '-') # s在操作的時(shí)候几缭,占用11個(gè)字符,居中對(duì)其沃呢,空白的位置使用指定的字符補(bǔ)齊
s.ljust(10) # s占用10個(gè)字符年栓,左對(duì)齊
s.rjust(10) # s占用10個(gè)字符,右對(duì)齊
# s.lstrip() # 刪除字符串s左邊的空格 #s.lstrip()
# #s.rstrip() s.strip()
# s.rstrip() # 刪除字符串s右邊的空格
# s.strip() # 刪除字符串s兩邊的空格
#
# # 字符串的查詢/匹配操作
# # find / rfind
# # index / rindex
# s = "hello"
# x = s.find("lo") # 查詢指定的字符串出現(xiàn)的位置;如果沒有查詢到返回-1
# x2 = s.index("lo")# 查詢指定的字符串出現(xiàn)的位置薄霜;如果沒有查詢到直接Error
#
# s.startswith("he") # 判斷s是否是"he"開頭的字符串吧某抓,返回True/False
# s.endswith("lo") # 判斷s是否是"lo"結(jié)尾的字符串,返回True/False
#
# # 字符串的拆分
# img = "https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=2913582182,143676263&fm=27&gp=0.jpg"
#
# # 拆分字符串
# print(img.rpartition("/")[-1])
# print(img.split("/")[-1])
#
#
# # 字符串的替換[查詢->替換]
# content = "發(fā)表一TMD片文章:文TMD章內(nèi)容中TMD今天真熱"
# print(content)
# content = content.replace("TMD", "***")
# print(content)