数字(int)常见功能
在网络课上,老师把这些功能称为神奇的魔法,想要揭开魔法神奇的面纱,想要看看有什么招数,在Pycharm里敲击三个字母(int),按住Ctrl,将鼠标点在int上,这时鼠标会变成小手。点进去,有关于int所有魔法的介绍(这个时候就是考验你英语水平的时候了呢,加油)
功能 | 描述 | 举例 |
int | #将字符串转化为十进制数字 #base:按照base的进制类型进行转化,可省略,默认为按照十进制数的形式转换 |
<class 'int'> 123
|
bit_length | #当前数字的二进制,至少要用几位来表示 |
|
字符串(str)常见功能
今天的重点就是总结字符串的这一系列魔法及其使用方法。
功能 | 描述 | 举例 |
capitalize | #Return a capitalized version of the string. #首字母大写 |
|
casefold | #这两个功能都是将字符串中的所有大写换成小写 #casefold功能更为强大,可以将特殊未知字符变成相对应的小写 |
|
lower | ||
center | #设置宽度,并将内容居中 |
|
count | # def count(self, sub, start=None, end=None): #去目标字符串中寻找子序列出现的次数。第二三个参数为目标字符串中开始和结束寻找的位置,可省略 |
|
startswith | #def startswith(self, prefix, start=None, end=None): #检测目标字符串中以XX结尾、以XX开始,XX可以是一个字符,也可以是一个子序列 #第二三个参数可以指定判断开始的字符和结束的字符(左闭右开)
|
|
endswith | ||
find | # def find(self, sub, start=None, end=None): #S.find(sub[, start[, end]]) -> int 上述是关于find的定义 这两个功能都能实现从开始往后找,找到第一个之后,并获取其位置 但是如果find没找到返回-1,而index没找到,则会报错。因此我们通常选择find来实现此功能。
|
|
index | ||
format | 二者都可以实现格式化,将一个字符串中的占位符替换为指定的值的功能。只是二者替换形式有所不同,通过例子来感受一下。 需要强调的是: 在format_map,替换内容加{},否则会报错。 在format中,有两种替换方式,一种是字符串替换,一种是位置替换。 |
|
format_map | ||
isalnum | #Return True if the string is an alpha-numeric string, False otherwise. #there is at least one character in the string. #判断目标字符串中是否只包含字母和数字 |
|
expandtabs | #Return a copy where all tab characters are expanded using spaces. # If tabsize is not given, a tab size of 8 characters is assumed. #这个功能可以用来制作表格 |
|
isdecimal | #这三个功能类似,都是检测字符串中是否全为数字。 #不同的是: isdecimal检测普通数字,如1 2 3... isdigit还可检测特殊数字,如①.... isnumeric除了上述两种数字外,可以检测汉字数字。如 二、 三 ...
|
|
isdigit | ||
isnumeric | ||
isidentifier | #检测目标字符串是否为标识符 #Return True if the string is a valid Python identifier, False otherwise. |
|
isprintable | #检测是否存在不可显示的字符 \t制表符 \n换行符 #Return True if the string is printable, False otherwise.
|
|
isspace | #判断是否全部是空格 需要强调的是:判断的目标字符串中至少要有一个字符。如果没有字符的话返回也是False |
|
istitle | #istitle判断是否是标题。 #title是将目标序列转换为标题格式 #所谓标题格式就是每个单词首字母为大写 |
|
title | ||
join | #将字符串中的每一个元素按照指定分割符进行拼接 #Concatenate any number of strings.(分割符可以是任意个,也可以是空格键) |
|
center | #这三个功能都可以设置宽度 #不同的是center将内容居中(两边填充);ljust是内容放在左边(右边填充),rjust是内容放在右边(左边填充) #第一个参数代指新字符串的长度,第二个参数为一个字符,空白位置填充,可有可无 |
|
ljust | ||
rjust | ||
islower | #islower 判断字符串中字符是否全部为小写 #isupper 判断字符串中字符是否全部为大写 #lower 将目标字符串中的所有大写全转换为小写 #upper 将目标字符串中的所有小写全转换为大写 (这几个功能最大的意义在于我们平时输入验证码时,大小写都可以识别的原因就是在后台进行了这样一个转换) |
|
lower | ||
isupper | ||
upper | ||
strip | #取出左右空白; #去除\n,\t; #移除指定字符串(有限最多匹配原则进行去除) |
|
maketrans | #这两个功能通常是连在一起用的 #maketrans是将指定字符串进行一个替换(替换是一一对应替换如将1--》a,字符串中所有1都将替换为a) # translate:Replace each character in the string using the given translation table.(英文翻译更为准确) |
|
translate | ||
partition | #三个功能都可以实现将字符串按照指定字符进行分割 #不同的是: partition分割为3份,从左边开始找分割字符。 rpartition分割为3份,从右边开始找分割字符。 关于上述两个功能返回结果表述: returns a 3-tuple containing the part before the separator, the separator itself, and the part after it.If the separator is not found, returns a 3-tuple containing the original string and two empty strings.) split可以按照制定分割字符进行全部分割,但是分割后分隔符丢失。(也可以根据第二个参数制定分割份数) |
|
rpartition | ||
split | ||
splitlines | #根据换行符来进行分割 #如果结果中想要保留换行符,参数为True,否则为False |
|
swapcase | #将目标字符串中的大写换成小写,将小写换成大写 |
|
replace | #替换,不同maketrans(将指定字符串进行一个替换,一个字节对弈一个字节),replace的替换是可以任意进行,字符个数不要要一一对应,我一字字符可以替换多个字符,多个字符也可以用一个来替换。 #第三个参数可以指定替换的个数 |
|
str.[] | #索引,下标,获取字符串中的某一个字符 |
|
str.[m:n] | #切片,获取字符串中第m个到第N的字符(不包括第N个,左闭右开) 需要注意的是,当N取-1时候,代表截取字符串从当前位置到最后一位 |
|
range | #帮助创建连续的数字,第三个参数通过设置不常来指定不连续 需要注意的是: Python2.7(直接创建)和python3(通过for循环来创建,节省内存空间) |
|
字符串功能小结
字符串的功能太多了,我们需要做的呢,就是会用。但是以下几个是要牢牢记住的。(8个)
jion split find strip upper lower replace range
还有四个操作呢,非常重要。几乎在所有数据类型中都可以使用的
len() for循环 索引 切片
这些需要记住的,我在表格里用黄色加粗标注。
注意啦:字符串一旦创建,便不可修改。一旦修改或者拼接,都会造成重新生成一个新的字符串
(其实这些功能还需要多练习去体会它的用法,很多时候看英文的注释会更深刻的理解哦)