python strip() 函数和 split() 函数的详解及实例


Posted in Python onFebruary 03, 2017

 python strip() 函数和 split() 函数的详解及实例

一直以来都分不清楚strip和split的功能,实际上strip是删除的意思;而split则是分割的意思。因此也表示了这两个功能是完全不一样的,strip可以删除字符串的某些字符,而split则是根据规定的字符将字符串进行分割。下面就详细说一下这两个功能,

1 Python strip()函数 介绍

函数原型

声明:s为字符串,rm为要删除的字符序列

s.strip(rm)       删除s字符串中开头、结尾处,位于 rm删除序列的字符

s.lstrip(rm)      删除s字符串中开头处,位于 rm删除序列的字符

s.rstrip(rm)     删除s字符串中结尾处,位于 rm删除序列的字符

注意:

(1)当rm为空时,默认删除空白符(包括'\n', '\r', '\t',  ' ')

(2)这里的rm删除序列是只要边(开头或结尾)上的字符在删除序列内,就删除掉。

例如,

>>> a = '  123' 
>>> a 
'  123' 
>>> a.strip() 
'123'

(2)这里的rm删除序列是只要边(开头或结尾)上的字符在删除序列内,就删除掉。

例如,

>>> a = '123abc' 
>>> a.strip('21') 
'3abc' 
>>> a.strip('12') 
'3abc'

结果是一样的。

2 python split()函数 介绍

说明:

Python中没有字符类型的说法,只有字符串,这里所说的字符就是只包含一个字符的字符串!!!

这里这样写的原因只是为了方便理解,仅此而已。

(1)按某一个字符分割,如‘.'

>>> str = ('www.google.com') 
>>> print str 
www.google.com 
>>> str_split = str.split('.') 
>>> print str_split 
['www', 'google', 'com']

(2)按某一个字符分割,且分割n次。如按‘.'分割1次

>>> str_split = str.split('.',1) 
>>> print str_split 
['www', 'google.com']

(3)split()函数后面还可以加正则表达式,例如:

>>> str_split = str.split('.')[0] 
>>> print str_split 
www

split分隔后是一个列表,[0]表示取其第一个元素;

>>> str_split = str.split('.')[::-1] 
>>> print str_split 
['com', 'google', 'www'] 
>>> str_split = str.split('.')[::] 
>>> print str_split 
['www', 'google', 'com']

按反序列排列,[::]安正序排列

>>> str = str + '.com.cn' 
>>> str 
'www.google.com.com.cn' 
>>> str_split = str.split('.')[::-1] 
>>> print str_split 
['cn', 'com', 'com', 'google', 'www'] 
>>> str_split = str.split('.')[:-1] 
>>> print str_split 
['www', 'google', 'com', 'com']

从首个元素开始到次末尾,最后一个元素删除掉。

split()函数典型应用之一,ip数字互换:

# ip ==> 数字

>>> ip2num = lambda x:sum([256**j*int(i) for j,i in enumerate(x.split('.')[::-1])]) 
>>> ip2num('192.168.0.1') 
3232235521

# 数字 ==> ip # 数字范围[0, 255^4]

>>> num2ip = lambda x: '.'.join([str(x/(256**i)%256) for i in range(3,-1,-1)]) 
>>> num2ip(3232235521) 
'192.168.0.1'

最后,python怎样将一个整数与IP地址相互转换?

>>> import socket 
>>> import struct 
>>> int_ip = 123456789 
>>> socket.inet_ntoa(struct.pack(‘I',socket.htonl(int_ip)))#整数转换为ip地址 
‘7.91.205.21' 
>>> str(socket.ntohl(struct.unpack(“I”,socket.inet_aton(“255.255.255.255″))[0]))#ip地址转换为整数 
‘4294967295'

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
Python中用format函数格式化字符串的用法
Apr 08 Python
python中__slots__用法实例
Jun 04 Python
浅谈Django REST Framework限速
Dec 12 Python
详解用Python处理HTML转义字符的5种方式
Dec 27 Python
利用Python如何将数据写到CSV文件中
Jun 05 Python
python 读写文件,按行修改文件的方法
Jul 12 Python
Django中更改默认数据库为mysql的方法示例
Dec 05 Python
Python一键查找iOS项目中未使用的图片、音频、视频资源
Aug 12 Python
Python多线程爬取豆瓣影评API接口
Oct 22 Python
python 解决tqdm模块不能单行显示的问题
Feb 19 Python
python中的selenium安装的步骤(浏览器自动化测试框架)
Mar 17 Python
Python自动操作神器PyAutoGUI的使用教程
Jun 16 Python
利用python画一颗心的方法示例
Jan 31 #Python
利用Python脚本生成sitemap.xml的实现方法
Jan 31 #Python
利用python实现命令行有道词典的方法示例
Jan 31 #Python
Python爬虫包 BeautifulSoup  递归抓取实例详解
Jan 28 #Python
python 编程之twisted详解及简单实例
Jan 28 #Python
详解python之简单主机批量管理工具
Jan 27 #Python
Python下的Softmax回归函数的实现方法(推荐)
Jan 26 #Python
You might like
php中看实例学正则表达式
2006/12/25 PHP
探讨各种PHP字符串函数的总结分析
2013/06/05 PHP
php分页查询mysql结果的base64处理方法示例
2017/05/18 PHP
提高 DHTML 页面性能
2006/12/25 Javascript
ImageFlow可鼠标控制图片滚动
2008/01/30 Javascript
javascript 对象定义方法 简单易学
2009/03/22 Javascript
EXT窗口Window及对话框MessageBox
2011/01/27 Javascript
node.js 一个简单的页面输出实现代码
2012/03/07 Javascript
jQuery无刷新切换主题皮肤实例讲解
2015/10/21 Javascript
浅析Javascript中bind()方法的使用与实现
2016/04/29 Javascript
基于vue 添加axios组件,解决post传参数为null的问题
2018/03/05 Javascript
Javascript的this详解
2019/03/23 Javascript
vue增加强缓存和版本号的实现方法
2019/05/01 Javascript
nodejs nedb 封装库与使用方法示例
2020/02/06 NodeJs
通过实例解析chrome如何在mac环境中安装vue-devtools插件
2020/07/10 Javascript
[02:36]DOTA2英雄基础教程 斯拉克
2013/11/29 DOTA
[09:22]2014DOTA2西雅图国际邀请赛 主赛事第二日TOPPLAY
2014/07/21 DOTA
[01:32]2016国际邀请赛中国区预选赛CDEC战队教练采访
2016/06/26 DOTA
[01:02:48]2018DOTA2亚洲邀请赛小组赛 A组加赛 Newbee vs Liquid
2018/04/03 DOTA
[01:10]为家乡而战!完美世界城市挑战赛全国总决赛花絮
2019/07/25 DOTA
python装饰器使用方法实例
2013/11/21 Python
python实现保存网页到本地示例
2014/03/16 Python
Python实现的Excel文件读写类
2015/07/30 Python
使用Python绘制图表大全总结
2017/02/11 Python
python如何使用正则表达式的前向、后向搜索及前向搜索否定模式详解
2017/11/08 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
2018/02/11 Python
python验证码识别教程之灰度处理、二值化、降噪与tesserocr识别
2018/06/04 Python
python3文件复制、延迟文件复制任务的实现方法
2019/09/02 Python
django中使用事务及接入支付宝支付功能
2019/09/15 Python
纯CSS实现的大小渐变、渐远效果
2014/04/15 HTML / CSS
CSS3中box-shadow的用法介绍
2015/07/15 HTML / CSS
CSS3 分类菜单效果
2019/05/27 HTML / CSS
英国最大的线上保健品零售商之一:Vitamin Planet
2016/12/01 全球购物
北京振戎融通Java面试题
2015/09/03 面试题
工作保证书范文
2014/04/29 职场文书
书法兴趣小组活动总结
2014/07/07 职场文书