python学习笔记2:字符串

1、python3中的字符串可以使用引号(’或”)开创建。

  a = "hello World!”

  print(type(a))

    结果:<class 'str'>

2、python没有C语言等其他语言中“char”类型,哪怕只有一个字符,python也按照字符串处理。python访问子字符串,可以使用方括号截取字符串。

  a[0]  ----> "h"

  a[1:5]  ----> "hell"

  当在中括号中包含两个参数时,表示从第一个参数开始,并包含这个字符,到第二个参数结束,但不包含这个字符。

3、字符串拼接:直接用 + 符号;

  b = “你好!世界!”

  c = a + b

  print(c)  ------>"hello World!你好!世界!"

4、python中的转义字符

  在字符中使用特殊字符时,python用反斜杠(\)转义字符。

\(在行尾时)     续行符
\\         反斜杠符号
\'         单引号
\"         双引号
\a         响铃
\b         退格(Backspace)
\e         转义
\000         空
\n         换行
\v         纵向制表符
\t         横向制表符
\r         回车
\f         换页
\oyy         八进制数,yy代表的字符,例如:\o12代表换行
\xyy         十六进制数,yy代表的字符,例如:\x0a代表换行
\other     其它的字符以普通格式输出

5、其他字符串处理方式:

*        重复输出字符串
in        成员运算符 - 如果字符串中包含给定的字符返回 True
not in     成员运算符 - 如果字符串中不包含给定的字符返回 True
r/R        原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 
    原始字符串除在字符串的第一个引号前加上字母 r(可以大小写)以外,与普通字符串有着几乎完全相同的语法。

6、python字符串格式化

# 在创建字符串时,可以在字符串中指定占位符
# %s 在字符串中表示任意字符
# %f 浮点数占位符
# %d 整数占位符
a = "cloos"
b = 'Hello %s'%'cloos'
b = 'hello %s 你好 %s'%('tom','cloos')
b = 'hello %3.5s'%'abcdefg' # %3.5s字符串的长度限制在3-5之间
b = 'hello %s'%123.456
b = 'hello %.2f'%123.456
b = 'hello %d'%123.95

# print('a = %s'%a)

# 格式化字符串,可以通过在字符串前添加一个f来创建一个格式化字符串
# 在格式化字符串中可以直接嵌入变量
c = f'hello {a} {b}'

 PS:python字符串格式化符号:

%c     格式化字符及其ASCII码
%s     格式化字符串
%d     格式化整数
%u     格式化无符号整型
%o     格式化无符号八进制数
%x     格式化无符号十六进制数
%X     格式化无符号十六进制数(大写)
%f     格式化浮点数字,可指定小数点后的精度
%e     用科学计数法格式化浮点数
%E     作用同%e,用科学计数法格式化浮点数
%g     %f和%e的简写
%G     %f 和 %E 的简写
%p     用十六进制数格式化变量的地址

6、python三引号:

三引号的作用除了多行注释外,还可以允许一个字符串跨多行。

7、python字符串的一些方法:

name = cloos
#求字符串长度
print(len(name))

#
首字母大写 print(name.capitalize()) #统计字符出现次数 print(name.count('o')) #居中显示,不够用’-‘补齐 print(name.center(50,'-')) #判断字符串以什么结尾 print(name.endswith('s')) #把字符串中的tab表示多少个空格 print(name.expandtabs(tabsize=30)) #去字符串的索引值 print(name.find('o')) #字符串切片 print(name[name.find("o"):]) #替换 print(name.format(names = 'nihao',year = 23)) #字符串中是阿拉伯数字 print("ab12".isalnum()) #判断是否是纯英文字符 print("abA".isalpha()) #判断是不是十进制 print("1F".isdecimal()) #判断是不是整数 print("12".isdigit()) #判断是不是标准的标识符 print("a fi".isidentifier()) #判断是不是只有数字 print("33A".isnumeric()) #判断是不是标题(判断每个单词的字母是不是大写 print("my Name Is".istitle()) #是否能打印的文件,tty file print("my Name Is".isprintable()) #是不是大写 print("my Name Is".isupper()) #合并列表为字符串,第一份参数存放分割符 print(",".join(['1','2'])) print(type(",".join(['1','2']))) #格式输出,字符不够用*补充 print(name.ljust(50,"*")) print(name.rjust(50,"*")) #转换为小写 print("Cloos".lower()) #转换为大写 print("Cloos".upper()) #去掉左边换行或空格 print("\n Cloos \n".lstrip()) #去掉右边换行或空格 print("\n Cloos \n".rstrip()) #去掉两边换行或空格 print("\n Cloos \n".strip()) #把上上中的字母转换为对应的数字,可用于加密 p = str.maketrans("abcdefg","1234567") print("cloos".translate(p)) #替换,第三个参数为替换个数 print("cloos".replace("o",'O')) print("cloos".replace("o",'O',1))
#替换空格
print("cloos xie".replace(' ',''))
#找到最右边一个字符的下标 print("cloos".rfind('o')) #按照设定字符拆分字符串为列表,默认为空格 print("cloos is good".split()) print("cloos is good".split('o')) #暗转换行拆分 print("cloos is\n good".splitlines()) #大写变小写 print("clOOs".swapcase()) #转换为标题(单词首字母大写) print("cloos am".title())

 

posted @ 2019-04-15 08:50  cloos.xie  阅读(207)  评论(0编辑  收藏  举报