Python是一种简单的、解释型的、交互式的、可移植的、面向对象的超高级语言。
try-except-else 代码块的工作原理大致如下: Python尝试执行try 代码块中的代码; 只有可能引发异常的代码才需要放在try 语句中。一些仅在try 代码块成功执行时才需要运行的代码; 这些代码应放在else 代码块中。
反斜杠可以用来转义,使用r可以让反斜杠不发生转义。。 如 r”this is a line with \n” 则\n会显示,并不是换行。
元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用。
移除集合中的元素,且如果元素不存在,不会发生错误。s.discard( x )
获取文件后缀:
def getfile_fix(filename):
return filename[filename.rfind('.')+1:]
print(getfile_fix('runoob.txt'))
re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。
re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。
re.match(pattern, string, flags=0)
re.search 扫描整个字符串并返回第一个成功的匹配。
re.search(pattern, string, flags=0)
re.sub(pattern, repl, string, count=0)
参数:
pattern : 正则中的模式字符串。
repl : 替换的字符串,也可为一个函数。
string : 要被查找替换的原始字符串。
count : 模式匹配后替换的最大次数,默认 0 表示替换所有的匹配。
re.finditer和 findall 类似,在字符串中找到正则表达式所匹配的所有子串,并把它们作为一个迭代器返回。
re.finditer(pattern, string, flags=0)
choice() 方法返回一个列表,元组或字符串的随机项。
import random
random.choice( seq )
randrange() 方法返回指定递增基数集合中的一个随机数,基数缺省值为1。
import random
random.randrange ([start,] stop [,step])
random() 方法返回随机生成的一个实数,它在[0,1)范围内。
import random
random.random()
shuffle() 方法将序列的所有元素随机排序。
import random
a=[4,1,8]
random.shuffle(a)
print(a)
uniform() 方法将随机生成下一个实数,它在[x,y]范围内。
import random
random.uniform(x, y)
capitalize()将字符串的第一个字母变成大写,其他字母变小写。
str.capitalize()
center() 方法返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。
str.center(width[, fillchar])
count() 方法用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。
str.count(sub, start= 0,end=len(string))
endswith() 方法用于判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回True,否则返回False。可选参数”start”与”end”为检索字符串的开始与结束位置。
str.endswith(suffix[, start[, end]])
startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False。如果参数 beg 和 end 指定值,则在指定范围内检查。
str.startswith(str, beg=0,end=len(string))
expandtabs() 方法把字符串中的 tab 符号(‘\t’)转为空格,tab 符号(‘\t’)默认的空格数是 8。
str.expandtabs(tabsize=8)
find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。
str.find(str, beg=0, end=len(string))
rfind(str, beg=0,end=len(string))
index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。
str.index(str, beg=0, end=len(string))
rindex( str, beg=0, end=len(string))
isalnum() 方法检测字符串是否由字母和数字组成。
str.isalnum()
isalpha()
str.isalpha()
str.isdigit()
str.islower()
str.isspace()
str.isupper()
isnumeric() 方法检测字符串是否只由数字组成。这种方法是只针对unicode对象。(定义一个字符串为Unicode,只需要在字符串前添加 ‘u’ 前缀即可)
str.isnumeric()
istitle() 方法检测字符串中所有的单词拼写首字母是否为大写,且其他字母为小写。
str.istitle()
join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
str.join(sequence)
ljust() 方法返回一个原字符串左对齐,并使用空格填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串。
str.ljust(width[, fillchar])
rjust(width,[, fillchar])
lstrip() 方法用于截掉字符串左边的空格或指定字符。
str.lstrip([chars])
str.rstrip()
str.strip([chars])
replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
str.replace(old, new[, max])
split()通过指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串
str.split(str="", num=string.count(str))
splitlines() 按照行(‘\r’, ‘\r\n’, \n’)分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符
str.splitlines([keepends])
swapcase() 方法用于对字符串的大小写字母进行转换。
str.swapcase();
translate() 方法根据参数table给出的表(包含 256 个字符)转换字符串的字符,要过滤掉的字符放到 deletechars 参数中。
# 制作翻译表
bytes_tabtrans = bytes.maketrans(b'abcdefghijklmnopqrstuvwxyz', b'ABCDEFGHIJKLMNOPQRSTUVWXYZ')
# 转换为大写,并删除字母o
print(b'runoob'.translate(bytes_tabtrans, b'o'))