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的装饰器模式与面向切面编程详解
Jun 21 Python
python编程开发之textwrap文本样式处理技巧
Nov 13 Python
解决pyqt中ui编译成窗体.py中文乱码的问题
Dec 23 Python
浅析python打包工具distutils、setuptools
Apr 20 Python
对pandas将dataframe中某列按照条件赋值的实例讲解
Nov 29 Python
Python Numpy库datetime类型的处理详解
Jul 13 Python
python实现根据给定坐标点生成多边形mask的例子
Feb 18 Python
Django 解决model 反向引用中的related_name问题
May 19 Python
python实现密码验证合格程序的思路详解
Jun 01 Python
Django xadmin安装及使用详解
Oct 26 Python
python中用ggplot绘制画图实例讲解
Jan 26 Python
学会用Python实现滑雪小游戏,再也不用去北海道啦
May 20 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的ob_start();控制您的浏览器cache!
2007/02/14 PHP
Yii查询生成器(Query Builder)用法实例教程
2014/09/04 PHP
php绘图之加载外部图片的方法
2015/01/24 PHP
基于php数组中的索引数组和关联数组详解
2018/03/12 PHP
JS 判断代码全收集
2009/04/28 Javascript
jquery 得到当前页面高度和宽度的两个函数
2010/02/21 Javascript
javascript的字符串按引用复制和传递,按值来比较介绍与应用
2012/12/28 Javascript
捕获浏览器关闭、刷新事件不同情况下的处理方法
2013/06/02 Javascript
node.js中的fs.readSync方法使用说明
2014/12/17 Javascript
JavaScript通过prototype给对象定义属性用法实例
2015/03/23 Javascript
flash+jQuery实现可关闭及重复播放的压顶广告
2015/04/15 Javascript
基于jquery实现select选择框内容左右移动添加删除代码分享
2015/08/25 Javascript
分享有关jQuery中animate、slide、fade等动画的连续触发、滞后反复执行的bug
2016/01/10 Javascript
node模块机制与异步处理详解
2016/03/13 Javascript
JavaScript自学笔记(必看篇)
2016/06/23 Javascript
巧用jQuery选择器提高写表单效率的方法
2016/08/19 Javascript
使用node.js中的Buffer类处理二进制数据的方法
2016/11/26 Javascript
Node.js对MongoDB数据库实现模糊查询的方法
2017/05/03 Javascript
js实现音乐播放控制条
2017/09/09 Javascript
js删除数组中的元素delete和splice的区别详解
2018/02/03 Javascript
使用webpack/gulp构建TypeScript项目的方法示例
2019/12/18 Javascript
python 查找文件名包含指定字符串的方法
2018/06/05 Python
使用Flask集成bootstrap的方法
2018/07/24 Python
python设计tcp数据包协议类的例子
2019/07/23 Python
python虚拟环境完美部署教程
2019/08/06 Python
Django框架模板用法入门教程
2019/11/04 Python
Python scrapy增量爬取实例及实现过程解析
2019/12/24 Python
django model通过字典更新数据实例
2020/04/01 Python
pycharm Tab键设置成4个空格的操作
2021/02/26 Python
用HTML5制作一个简单的桌球游戏的教程
2015/05/12 HTML / CSS
介绍一下MD5加密算法
2016/11/12 面试题
Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型
2013/10/30 面试题
大学运动会加油稿200字(5篇)
2014/09/27 职场文书
研究生导师评语
2014/12/31 职场文书
跟班学习心得体会(共6篇)
2016/01/23 职场文书
SpringBoot Http远程调用的方法
2022/08/14 Java/Android