Python小白学习之路(三)—【数字功能】【字符串功能】
数字(int)常见功能
在网络课上,老师把这些功能称为神奇的魔法,想要揭开魔法神奇的面纱,想要看看有什么招数,在Pycharm里敲击三个字母(int),按住Ctrl,将鼠标点在int上,这时鼠标会变成小手。点进去,有关于int所有魔法的介绍(这个时候就是考验你英语水平的时候了呢,加油)
功能 | 描述 | 举例 |
int |
#将字符串转化为十进制数字 #base:按照base的进制类型进行转化,可省略,默认为按照十进制数的形式转换 |
a = '' <class 'int'> 123 |
bit_length |
#当前数字的二进制,至少要用几位来表示 |
num = 8 |
字符串(str)常见功能
今天的重点就是总结字符串的这一系列魔法及其使用方法。
功能 |
描述 |
举例 |
capitalize |
#Return a capitalized version of the string. #首字母大写 |
test = "xhg" |
casefold |
#这两个功能都是将字符串中的所有大写换成小写 #casefold功能更为强大,可以将特殊未知字符变成相对应的小写 |
test = "XiaoHuoguo" |
lower |
||
center |
#设置宽度,并将内容居中 |
test = "love" |
count |
# def count(self, sub, start=None, end=None): #去目标字符串中寻找子序列出现的次数。第二三个参数为目标字符串中开始和结束寻找的位置,可省略 |
test = 'ajhklsdghexhgldkxhg' |
startswith |
#def startswith(self, prefix, start=None, end=None): #检测目标字符串中以XX结尾、以XX开始,XX可以是一个字符,也可以是一个子序列 #第二三个参数可以指定判断开始的字符和结束的字符(左闭右开) |
test = 'xhgxhg' |
endswith |
||
find |
# def find(self, sub, start=None, end=None): #S.find(sub[, start[, end]]) -> int 上述是关于find的定义 这两个功能都能实现从开始往后找,找到第一个之后,并获取其位置 但是如果find没找到返回-1,而index没找到,则会报错。因此我们通常选择find来实现此功能。 |
test = 'xhgxhaeifgsdlk' |
index |
||
format |
二者都可以实现格式化,将一个字符串中的占位符替换为指定的值的功能。只是二者替换形式有所不同,通过例子来感受一下。 需要强调的是: 在format_map,替换内容加{},否则会报错。 在format中,有两种替换方式,一种是字符串替换,一种是位置替换。 |
test1 = 'i am {name}, age {num}' |
format_map |
||
isalnum |
#Return True if the string is an alpha-numeric string, False otherwise. #there is at least one character in the string. #判断目标字符串中是否只包含字母和数字 |
test = 'dsflj2' |
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. #这个功能可以用来制作表格 |
test1 = 'username\tage\tpassword\nxhg\t20\t888888\n' |
isdecimal |
#这三个功能类似,都是检测字符串中是否全为数字。 #不同的是: isdecimal检测普通数字,如1 2 3... isdigit还可检测特殊数字,如①.... isnumeric除了上述两种数字外,可以检测汉字数字。如 二、 三 ... |
test1= "" |
isdigit |
||
isnumeric |
||
isidentifier |
#检测目标字符串是否为标识符 #Return True if the string is a valid Python identifier, False otherwise. |
test = 'defad3_' |
isprintable |
#检测是否存在不可显示的字符 \t制表符 \n换行符 #Return True if the string is printable, False otherwise. |
test = 'fsd\nklfusdf' |
isspace |
#判断是否全部是空格 需要强调的是:判断的目标字符串中至少要有一个字符。如果没有字符的话返回也是False |
test = ' ' |
istitle |
#istitle判断是否是标题。 #title是将目标序列转换为标题格式 #所谓标题格式就是每个单词首字母为大写 |
test = 'Process finished with exit code' |
title |
||
join |
#将字符串中的每一个元素按照指定分割符进行拼接 #Concatenate any number of strings.(分割符可以是任意个,也可以是空格键) |
test = '深度学习与计算机视觉' |
center |
#这三个功能都可以设置宽度 #不同的是center将内容居中(两边填充);ljust是内容放在左边(右边填充),rjust是内容放在右边(左边填充) #第一个参数代指新字符串的长度,第二个参数为一个字符,空白位置填充,可有可无 |
test = 'love' |
ljust |
||
rjust |
||
islower |
#islower 判断字符串中字符是否全部为小写 #isupper 判断字符串中字符是否全部为大写 #lower 将目标字符串中的所有大写全转换为小写 #upper 将目标字符串中的所有小写全转换为大写 (这几个功能最大的意义在于我们平时输入验证码时,大小写都可以识别的原因就是在后台进行了这样一个转换) |
test1 = 'XhG' |
lower |
||
isupper |
||
upper |
||
strip |
#取出左右空白; #去除\n,\t; #移除指定字符串(有限最多匹配原则进行去除) |
test = 'love ' |
maketrans |
#这两个功能通常是连在一起用的 #maketrans是将指定字符串进行一个替换(替换是一一对应替换如将1--》a,字符串中所有1都将替换为a) # translate:Replace each character in the string using the given translation table.(英文翻译更为准确) |
s = 'xhg Love HG' |
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可以按照制定分割字符进行全部分割,但是分割后分隔符丢失。(也可以根据第二个参数制定分割份数) |
test = 'dhsfesqsg' |
rpartition |
||
split |
||
splitlines |
#根据换行符来进行分割 #如果结果中想要保留换行符,参数为True,否则为False |
test = 'fah\nadsgak\njfh\nakjfdfh\n' |
swapcase |
#将目标字符串中的大写换成小写,将小写换成大写 |
test = 'AAaa' |
replace |
#替换,不同maketrans(将指定字符串进行一个替换,一个字节对弈一个字节),replace的替换是可以任意进行,字符个数不要要一一对应,我一字字符可以替换多个字符,多个字符也可以用一个来替换。 #第三个参数可以指定替换的个数 |
test = 'lovelovelovelove' |
str.[] |
#索引,下标,获取字符串中的某一个字符 |
test = 'lovel' |
str.[m:n] |
#切片,获取字符串中第m个到第N的字符(不包括第N个,左闭右开) 需要注意的是,当N取-1时候,代表截取字符串从当前位置到最后一位 |
test = 'lovel' |
range |
#帮助创建连续的数字,第三个参数通过设置不常来指定不连续 需要注意的是: Python2.7(直接创建)和python3(通过for循环来创建,节省内存空间) |
v = range(0 ,100 ,20) |
字符串功能小结
字符串的功能太多了,我们需要做的呢,就是会用。但是以下几个是要牢牢记住的。(8个)
jion split find strip upper lower replace range
还有四个操作呢,非常重要。几乎在所有数据类型中都可以使用的
len() for循环 索引 切片
这些需要记住的,我在表格里用黄色加粗标注。
注意啦:字符串一旦创建,便不可修改。一旦修改或者拼接,都会造成重新生成一个新的字符串
(其实这些功能还需要多练习去体会它的用法,很多时候看英文的注释会更深刻的理解哦)
Python小白学习之路(三)—【数字功能】【字符串功能】的更多相关文章
- Python小白学习之路(十八)—【内置函数三】
一.对象操作 help() 功能:返回目标对象的帮助信息 举例: print(help(input)) #执行结果 Help on built-in function input in module ...
- Python小白学习之路(五)—【类和对象】【列表】【列表相关功能】
类和对象 (简单的了解一下这个概念,初步有个印象,这个概念很重要,后面会着重讲) 类:具有相同属性和方法的对象的集合: 对象:万物皆对象: 概念很抽象(每当我看不到概念的时候,我就会通过举例来理解) ...
- Python小白学习之路(八)—【变量】【基本数据类型分类】【集合】【集合的功能】
一.变量 变量的作用:记录状态的变化变量的值:描述不同的状态 二.五大基本数据类型的分类 五大基本数据类型(数字 字符串 列表 元祖 字典) 按照可变不可变来进行分类 可变:列表.字典 不可变:字符串 ...
- Python小白学习之路(六)—— 【元祖】【元祖相关功能】
元祖 tu = (111,'alex',(11,['aa','xhg',(78,43)],'aaa'),789,) 通过这个例子,我们看到元祖的特征: 是通过括号()括起来的 一般写元祖的时候,推荐子 ...
- Python小白学习之路(七)—【字典】【字典的功能】【布尔值】
字典(dict) 基本结构: d = {key1 : value1, key2 : value2 } dict = {'} key : value称为字典的键值对. 每个键 key和值value 之间 ...
- Python小白学习之路(二)—【Pycharm安装与配置】【创建项目】【运算符】【数据类型】
写在前面: 第二天的学习,感觉比昨天学习相对轻松一些,但是对于我这个编程语言功底很弱的人来说,还是稍稍微有些.....哈尔滨的天气一天天冷了下来,还飘着小雨,不过还是挺有意境的.充实而又忙碌的生活,让 ...
- Python小白学习之路(四)——第一次练习题
写在前面: 今天下雪了呢!连着两天都没有更新学习记录. 我没有偷懒呢.做了一天的练习题,昨天学的内容还没总结完,太累了就回去睡觉了 连续一周早起,强大的内心也无法支撑我疲惫的身体 今天早起做了整理.加 ...
- Python小白学习之路(二十)—【打开文件的模式二】【文件的其他操作】
打开文件的模式(二) 对于非文本文件,我们只能使用b模式,"b"表示以字节的方式操作(而所有文件也都是以字节的形式存储的,使用这种模式无需考虑文本文件的字符编码.图片文件的jgp格 ...
- Python小白学习之路(十五)—【map()函数】【filter()函数】【reduce()函数】
一.map()函数 map()是 Python 内置的高阶函数 有两个参数,第一个是接收一个函数 f(匿名函数或者自定义函数都OK啦):第二个参数是一个 可迭代对象 功能是通过把函数 f 依次作用在 ...
随机推荐
- Python鸭子类型思想
动态语言中经常提到鸭子类型,所谓鸭子类型就是:如果走起路来像鸭子,叫起来也像鸭子,那么它就是鸭子(If it walks like a duck and quacks like a duck, it ...
- vue组件介绍
https://www.cnblogs.com/Leo_wl/p/5863185.html vue.js说说组件 什么是组件:组件是Vue.js最强大的功能之一.组件可以扩展HTML元素,封装可重 ...
- cucumber安装可能发生的错误
1.--ignore-certification-errors 解决:可能是你的chromedriver版本与ruby版本不匹配,换一个版本 2.找不到文件,certification verify ...
- 2018.07.09 洛谷P2365 任务安排(线性dp)
P2365 任务安排 题目描述 N个任务排成一个序列在一台机器上等待完成(顺序不得改变),这N个任务被分成若干批,每批包含相邻的若干任务.从时刻0开始,这些任务被分批加工,第i个任务单独完成所需的时间 ...
- Docker挂载宿主机目录
一.普通方式直接挂载 1.查看已有容器 docker ps 2.进入容器并挂载 docker run -it -v /root/work/docker:/root/hzbtest tomcat:7.0 ...
- nexus 私服跑一跑流程
尝试建立新项目上传,分享 D:\dev\workspace\helloworld>tree /F 卷 DATAPART 的文件夹 PATH 列表 卷序列号为 2C22-0A1A D:. │ po ...
- java web开发过程中的“\”指的是什么,如何区分
- 日期类的加减及java中所以日期类的操作算法大全
1.计算某一月份的最大天数 1Calendar time=Calendar.getInstance();2time.clear();3time.set(Calendar.YEAR,year); //y ...
- Asp.net Core2.0, 基于 claims 实现权限验证
https://www.cnblogs.com/KimmyLee/p/6430474.html
- Nodejs书写爬虫工具
看了几天的nodejs,的确是好用,全当是练手了,就写了一个爬虫工具. 爬虫思路都是一致的,先抓取页面数据,然后分析页面,获取到所需要的数据,最后获得这些数据,是写入到硬盘,还是显示到网页,自己看着办 ...