Files
notes_estom/Python/python2/字符串.md
yinkanglong_lab a5132d34cc python
2021-03-09 20:51:22 +08:00

133 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
\>字符串的定义
\>\>字符串是一个字符的序列,可以使用‘单引号’或者“双引号”表示。
\>\>使用‘’‘三引号’‘’表示时,可以保留字符串的格式信息。
\>\>可以使用转义字符表示字符串内部的引号。/n回车换行/t制表符
\>字符串的基本运算
\>\>len(字符串):返回字符串的长度
\>\> + 拼接操作name = first_name + "jordan"
\>\> \* 重复操作name \* 3 = "mike mike mike"
\>in运算
\>\> in
判断一个字符串是不是另一个字符串的子串大小写敏感返回一个true或false
> name = 'michael jordan'
> 'a' in name
> 返回true
\>\>for语句
> my_str = "hello word"
> for char in my_str
> 循环体
\>字符串索引index
\>\>字符创中每个字符都有个索引值下标索引0从前向后或-1从后向前开始
\>\>将其视为数组
\>字符串切片(将字符串视为字符串数组)
> 变量名[start:finish:conuntBy]获得子串
> start子序列开始的所以
> finish子序列结束位置的下一个位置
> countby字符串的方向和步长同range的第三个参数当取负数时逆向输出
\>\>字符串的不可变性
> 一个字符串一旦生成内容不可改变,不支持每项的赋值。
> 通过切片改变某个下标对应的字符。
\>\>通过切片生成新的字符串
my_str = my\_str[:1] + 'a' + my_str[2:]
\>\>通过切片获取逆字符串
reverse_str = my\_str[ : :-1]
\>字符串对象提供的函数(又称为方法)
> .replace('被替换的字符','新的字符'):返回新的字符串,不能修改原来字符串的内容。
> .find('查找字符'):查找一个字符
> .split():在制定的地方(默认是空格处),进行切分,返回一个字符串数组。
\>\>文件操作:
> 打开文件
> f =open(filename, mode)/mode=r or w
> 按行读取文件内容
> for line in f:
> pass
> 关闭文件:
> f.close()
> 写入文件
> f.write()
\>\>定义函数判断是否是回文字符串
非递归算法
递归算法
\>字符串比较
\>\>按字典顺序进行比较可以直接使用大于小于号返回true或者false
\>字符串的格式化输入输出
\>\>print "Hello{}good{}.".format(5,'DAY')
用中括号代替需要输出的字符,然后在中括号中进行格式化操作布局,调用.format对象的方法写入输出的内容。
\>\>例如
print 'pi is {: .4f}'.format(math.pi)
print 'pi is {:e}'.format(math.pi)
\>python的正则表达式
判断整个字符串name == 'Michael
判断是否 以 Mi 开始name[:2] == 'Mi
包含 cha 子串:'cha' in name
是否包含 c?a 子串:
是否包含 c\*e 子串?
.表示任意字符
\\d表示一系列数字
[a - z]表示任意一个小写字母