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 zip文件 压缩
Dec 24 Python
Python实现的RSS阅读器实例
Jul 25 Python
Python数组定义方法
Apr 13 Python
Python模拟登陆淘宝并统计淘宝消费情况的代码实例分享
Jul 04 Python
Python爬虫之网页图片抓取的方法
Jul 16 Python
Python3实现的简单工资管理系统示例
Mar 12 Python
python常用库之NumPy和sklearn入门
Jul 11 Python
用python写测试数据文件过程解析
Sep 25 Python
python装饰器练习题及答案
Nov 01 Python
python3.8.3安装教程及环境配置的详细教程(64-bit)
Nov 28 Python
Python try except finally资源回收的实现
Jan 25 Python
python opencv通过4坐标剪裁图片
Jun 05 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和ACCESS写聊天室(二)
2006/10/09 PHP
PHP与jquery实时显示网站在线人数实例详解
2016/12/02 PHP
PHP判断一个数组是另一个数组子集的方法详解
2017/07/31 PHP
Yii使用DbTarget实现日志功能的示例代码
2020/07/21 PHP
Js判断参数(String,Array,Object)是否为undefined或者值为空
2013/11/04 Javascript
Query中click(),bind(),live(),delegate()的区别
2013/11/19 Javascript
js通过元素class名字获取元素集合的具体实现
2014/01/06 Javascript
JS实现一个列表中包含上移下移删除等功能
2014/09/24 Javascript
原生js实现日期联动
2015/01/12 Javascript
jQueryUI 拖放排序遇到滚动条时有可能无法执行排序的小bug及解决方案
2016/12/19 Javascript
详解使用React全家桶搭建一个后台管理系统
2017/11/04 Javascript
react-router browserHistory刷新页面404问题解决方法
2017/12/29 Javascript
微信小程序中实现手指缩放图片的示例代码
2018/03/13 Javascript
浅谈react性能优化的方法
2018/09/05 Javascript
浅谈webpack4.x 入门(一篇足矣)
2018/09/05 Javascript
在Vue环境下利用worker运行interval计时器的步骤
2019/08/01 Javascript
js实现多图和单图上传显示
2019/12/18 Javascript
微信小程序自定义扫码功能界面的实现代码
2020/07/02 Javascript
更改Python的pip install 默认安装依赖路径方法详解
2018/10/27 Python
Python中常用的内置方法
2019/01/28 Python
Python PIL读取的图像发生自动旋转的实现方法
2019/07/05 Python
python卸载后再次安装遇到的问题解决
2019/07/10 Python
Python安装selenium包详细过程
2019/07/23 Python
使用Python实现文字转语音并生成wav文件的例子
2019/08/08 Python
Flask框架学习笔记之模板操作实例详解
2019/08/15 Python
wxpython多线程防假死与线程间传递消息实例详解
2019/12/13 Python
Tensorflow的常用矩阵生成方式
2020/01/04 Python
15个应该掌握的Jupyter Notebook使用技巧(小结)
2020/09/23 Python
详解python的super()的作用和原理
2020/10/29 Python
python连接mongodb数据库操作数据示例
2020/11/30 Python
pandas数据分组groupby()和统计函数agg()的使用
2021/03/04 Python
canvas绘制圆角头像的实现方法
2019/01/17 HTML / CSS
个性化皮包、小袋、生活配件:Mon Purse
2019/03/26 全球购物
捷科时代的软件测试笔试题
2015/11/09 面试题
领导班子自我剖析材料
2014/08/16 职场文书
领导干部群众路线剖析材料
2014/10/09 职场文书