Python全栈 第三天 1·字符串

str 字符串

  1. 创建字符串
    输入标识符 = "内容",可以创建一个字符串。单、双引号都可以,通常用双引号,方便单引号在字符串中使用。字符串中内容不能改变。引号本身不是字符串。
>>> st = "Hello Jason!"
>>> print(st)
Hello Jason!
  1. 输出字符串
    输入print(标识符),可以打印对象里的内容。
>>> a = '1+1 hello 这是字符串'
>>> a
'1+1 hello 这是字符串'

>>> b = "这是双引号的字符串"
>>> b
'这是双引号的字符串'

>>> c = '''这是一个
... 多行的
... 字符串
... 结束时也要输入三个引号
... 
... '''

>>> print(c)
这是一个
多行的
字符串
结束时也要输入三个引号

eval() 字符串中的数学运算

输入eval(字符串),可以对字符串内的表达式来求值,并返回运算结果。

>>> print("12 + 12")
12 + 12

>>> print(eval("12 + 12"))	# 加法
24
>>> print(eval("12 - 12"))	# 减法
0
>>> print(eval("12 * 12"))	#乘法
144
>>> print(eval("12 / 12"))	#除法
1.0

查看字符串内容

  1. in 是否在字符串里
    输入值 in 标识符,内容如果在指定的字符串里,值返回True,否则返回False。
>>> st1 = "123 good"
>>> "2" in st1
True
  1. not in 是否不在字符串里
    如果在指定的字符串中没有找到值返回True,否则返回False。
>>> st1 = "123 good"
>>> "hello" not in st1
True
  1. len() 统计长度
    输入llen(值或标识符),可以查看值或标识符的长度。
>>> print(len("hello"))
5
  1. count() 统计出现次数
    输入标识符.count(“内容”,开始索引,结束索引),可以统计指定位置区间,内容在字符串里出现的次数。也可以只输入查找的内容,默认在整个字符串中查找。
st = "Jason is good man"
print(st.count("is", 3, 5))
0

>>> print(st.count("is"))
1
  1. find() 查看首次出现的下标
    输入标识符.find("内容"),可以查看内容在字符串里首次出现的下标,默认从左至右查找。未找到返回-1。输入标识符.find("内容", 开始索引, 结束索引),可以查找指定区间。
st = "Jason is good man"  # 从左至右查找
>>> print(st.find("is"))
6

 print(st.find("is", 7, 20))  # 从左至右查找
-1
  1. rfind 查看首次出现的下标
    输入标识符.rfind("内容"),可以查看内容在字符串里首次出现的下标,从右至左查找。未找到返回-1。输入标识符.rfind("内容", 开始索引, 结束索引),可以查找指定区间。
>>> st = "abc  cba"
>>> print(st.rfind("a"))  # 从右至左查找
7

>>> print(st.rfind("a", 0, 5))  # 从右至左查找
0

>>> print(st.rfind("e"))  # 从右至左查找
-1
  1. index() 查看首次出现的下标
    输入标识符.index("内容"),可以查看内容在字符串里首次出现的下标,默认从左至右查找。未找到会报错。输入标识符.index("内容", 开始索引, 结束索引),可以查找指定区间。与find区别在于,未找到内容时输出结果不一样。
>>> st = "abc  cba"
>>> print(st.index("a"))
0

>>> print(st.index("a", 2))
7

>>> print(st.index("a", 2, 20))
7
  1. rindex() 查看首次出现的下标
    输入标识符.rindex("内容"),可以查看内容在字符串里首次出现的下标,从右至左查找。未找到会报错。输入标识符.rindex("内容", 开始索引, 结束索引),可以查找指定区间。
>>> st = "abc  cba"
>>> print(st.rindex("a"))
7

>>> print(st.rindex("a", 2))
7

>>> print(st.rindex("a", 2, 20))
7
  1. isdigit() 是否纯数字
    输入标识符.isdigit(),可以判断字符创里是否是纯数字,含有空格和标点符号不算纯数字。
>>> aa = '1234 1234'  #中间有空格或标点符号,不算纯数字
>>> aa.isdigit()
False

>>> aa = '12341234'
>>> aa.isdigit()
True
  1. isalpha() 是否纯字符
    输入标识符.isalpha(),可以判断字符创里是否是纯字符,含有空格和标点符号不算纯字符。
>>> aa = 'abc,abc'  #中间有空格或标点符号不算纯字母
>>> aa.isalpha()
False

>>> aa = 'abcd你好'
>>> aa.isalpha()
True
  1. startswith() 判断首句内容
    输入标识符.startswith("内容"),可以判断字符串是否以指定内容开头。
>>> aa = 'abcd你好'
>>> aa.startswith('a')
True

>>> aa.startswith('b')
False
  1. endswith() 判断句尾内容
    输入标识符.endswith("内容"),可以判断字符串是否以指定内容结尾。
>>> aa = 'abcd你好'
>>> aa.endswith('好')
True
>>> aa.endswith('a')
False
  1. islower() 是否全部小写
    输入标识符.islower(),可以查看字符串中字母是否全部小写。
>>> aa = 'abcd你好'
>>> aa.islower()
True

>>> aa = 'abcABC'
>>> aa.islower()
False
  1. isupper() 是否全部大写
    输入标识符.isupper(),可以查看字符串中字母是否全部大写。
>>> aa = 'ABC你好'
>>> aa.isupper()
True

>>> aa = 'abc你好'
>>> aa.isupper()
False
  1. isalnum 是否全部数字或字母
    输入标识符.isalnum(),可以查看字符串中是否全部是数字或字母,如果包含任何符号,返回False。
>>> st1 = "abc,123"
>>> print(st1.isalnum())
False

>>> st2 = "abc123"
>>> print(st2.isalnum())
True
  1. isspace 是否只包含空格
    输入标识符.isspace(),可以查看字符串中是否只包含空格,否则返回False。
>>> st1 = "abc,123"
>>> print(st1.isspace())
False

>>> st2 = "abc  123"
>>> print(st2.isspace())
False

>>> st3 = "  \t "
>>> print(st3.isspace())
True

更改字符串内容

  1. lower() 全部小写
    输入标识符.lower()可以将标识符中的大写字母改成小写。
>>> aa = 'ABC 你好'
>>> aa.lower()
'abc 你好'
  1. upper() 全部大写
    输入标识符.upper()可以将标识符中的小写字母改成大写。
>>> aa = 'abc你好'
>>> aa.upper()
'ABC你好'
  1. swapcase() 大小写转换
    输入标识符.swapcase(),可以将标识符中大写改成小写,小写改成大写。
>>> st = "aBc AbC"
>>> print(st.swapcase())
AbC aBc
  1. capitalize() 首写字母大写其他小写
    输入标识符.capitalize(),将标识符内句首的第一个字母大写,其余都是小写。
>>> st = "jason is a GOOD MAN."
>>> print(st.capitalize())
Jason is a good man.
  1. title() 单词首字母大写
    输入标识符.title(),将字符串中所有单词的首字母大写。
>>> st = 'abc abc abc'
>>> st.title()
'Abc Abc Abc'
  1. lstrip() 截掉左侧字符
    输入标识符.lstrip(),可以删除左侧字符,默认删除空格。输入标识符.lstrip("内容"),可以删除左侧指定字符。
st = "     Jason is a good man."
>>> print(st.lstrip())
Jason is a good man.

>>> st = "********* Jason is a good man."
>>> print(st.lstrip("*"))
 Jason is a good man.
  1. rstrip() 截掉右侧字符
    输入标识符.rstrip(),可以删除右侧字符,默认删除空格。输入标识符.rstrip("内容"),可以删除右侧指定字符。
>>> st = "Hello World!          "
>>> print(st.rstrip(), "!")
Hello World! !

>>> st = "Hello World!***********"
>>> print(st.rstrip("*"))
Hello World!
  1. strip() 截掉两侧字符
    输入标识符.strip(),可以删除两侧字符,默认删除空格。输入标识符.strip("内容"),可以删除两侧指定字符。
>>> st = "   !hello,world!   "
>>> print(st.strip())
!hello,world!

>>> st = "*****!hello,world!****"
>>> print(st.strip("*"))
!hello,world!
  1. replace() 替换原内容
    输入标识符.replace("旧内容","新内容",次数),用于替换字符串内容,用新内容替换旧内容。不输入次数默认全部替换。不输入新内容可以删除旧的内容。
>>> aa = 'sbc sbc sbc sbc'
>>> aa.replace('s','a')
'abc abc abc abc'

>>> aa.replace('s','a',2)
'abc abc sbc sbc'

>>> aa.replace('s','')  # 删除的方法
'bc bc bc bc'
  1. split() 分隔字符串
    输入标识符.split("指定分隔符",数字),可以用指定分隔符号分隔字符串,返回列表。数字表示分隔几次,不写数字默认分隔到末尾。
>>> st1 = "Jason*is*a*good*man"   # 以星号分隔
>>> print(st1.split("*"))
['Jason', 'is', 'a', 'good', 'man']

>>> st2 = "Jason is a good man"   # 以空格分隔三次
>>> print(st2.split(" ", 3))
['Jason', 'is', 'a', 'good man']
  1. splitlines() 换行分隔
    输入标识符.splitlines(),将多行字符串以行为单位,分隔 并返回列表,换行符会返回空列表。输入标识符.splitlines(True),会保留换行符号。
>>> st1 = """Hello world.
Hello Jason.
hello mac.
"""
>>> print(st1.splitlines())
['Hello world.', 'Hello Jason.', 'hello mac.']

>>> print(st1.splitlines(True))
['Hello world.\n', 'Hello Jason.\n', 'hello mac.\n']

字符串格式化

  1. %f 浮点数占位符
    输入:“%f” % (数字或标识符),用于字符串中浮点数的占位符,默认保留6位小数。输入“%.数字f”,可指定保留小数位数。
>>> print("%f hello %.2f" % (12.128, 12.128))
12.128000 hello 12.13
  1. %f 其它常用命令
    输入"%数字.数字f” % (数字或标识符)。第一个数值表示保留多少字符位置,默认右对齐。需要左对齐的时候,在第一个数值前加-号。可以与format命令一起使用,在format命令中,<表示左对齐。
>>> "%8.3f" % 5.2
'   5.200'

>>> "%-8.3f" % 5.2
'5.200   '

>>> "{:<8.2f}" . format (1.555555)
'1.56    '
  1. %d 整数占位符
    输入"%d" % (数字或标识符),用于字符串中整数占位符,值之间用逗号隔开。输入"%数字d",可以保留若干位字符位置。输入%.数字d,可以用零保留若干位字符位置。
>>> print("%d abc %.2d abc %5d" % (12.666, 5, 123))
12 abc 05 abc   123
  1. %s 字符占位符
    输入"%s" % (字符串或标识符),用于字符串中的字符串占位符,值之间用逗号隔开。
>>> print("%s" % ("Jason is a good man!"))
Jason is a good man!

>>> print("%s" % (st1))
Jason is a nice man!
  1. center() 居中格式
    输入标识符.center(数值, "符号"),可以将字符串两边插入指定大小的符号或空格。符号里不传参数,系统默认空格填充。
st = "Jason is good man"
>>> print(st.center(40, "$"))
$$$$$$$$$$$Jason is good man$$$$$$$$$$$$

print(st.center(40))
           Jason is good man   
  1. ljust() 左对齐格式
    输入标识符.ljust(数值, "符号"),可以将字符串右边插入指定大小的符号或空格。符号里不传参数,系统默认空格填充。
st = "Jason is good man"
>>> print(st.ljust(40, "$"))
Jason is good man$$$$$$$$$$$$$$$$$$$$$$$
  1. rjust() 右对齐格式
    输入标识符.rjust(数值, "符号"),可以将字符串左边插入指定大小的符号或空格。符号里不传参数,系统默认空格填充。
st = "Jason is good man"
>>> print(st.rjust(40, "$"))
$$$$$$$$$$$$$$$$$$$$$$$Jason is good man

>>> print(st.rjust(40))
                       Jason is good man
  1. zfill() 右对齐补零
    输入st.zfill(数值),可以返回一个指定长度的字符串,字符串右对齐,前面补零。
st = "Jason is good man"
>>> print(st.zfill(40))
00000000000000000000000Jason is good man
  1. format() 占位符
    输入"{}{}".format(标识符,标识符),可以用大括号占位,小括号里输入对应变量。输入"{索引号}{索引号}".format(标识符,标识符),用大括号占位,小括号里输入对应变量,通过索引号调取变量。
>>> aa = "hello"
>>> bb = "world"
>>> cc = "!"
>>> a = "{} {} {}".format(aa,bb,cc)
>>> print(a)
hello world !

>>> a = "{0} {2} {1}".format(aa,bb,cc)
>>> print(a)
hello ! world

转义字符

  1. \n 换行符
>>> print("Hello\nJason")
Hello
Jason
  1. \\ 反斜杠符号
>>> print("Hello \\ World")
Hello \ World
  1. \' \" 单双引号
print("Jason \'is\' a \"good\" man!")
Jason 'is' a "good" man!
  1. \t 制表符
>>> print("Hello\tWorld")   # 通常默认4个空格
Hello	World
  1. r 取消字符串内的转义
print(r"Jason \'is\' a \"good\" man!")
Jason \'is\' a \"good\" man!
  1. \b 退格
>>> print('Hello\bWorld') # 会覆盖掉之前的内容
HellWorld

猜你喜欢

转载自blog.csdn.net/weixin_43641060/article/details/86504373