Python语言之斜杠反斜杠,去空格\xa0,连接函数join()
小标 2018-08-08 来源 : 阅读 2094 评论 0

摘要:本文主要向大家介绍了Python语言之斜杠反斜杠,去空格\xa0,连接函数join(),通过具体的内容向大家展示,希望对大家学习Python语言有所帮助。

本文主要向大家介绍了Python语言之斜杠反斜杠,去空格\xa0,连接函数join(),通过具体的内容向大家展示,希望对大家学习Python语言有所帮助。

   1斜杠反斜杠
斜杠:/。反斜杠:\。
反斜杠\,在windows系统中用来表示目录。
而在unix系统中,/表示目录。由于web遵循unix命名,所以在网址(URL)中,/表示目录。
在unix系统中,\表示跳脱字符将特殊字符变成一般字符(如enter,$,空格等)。
 

2python中去掉字符串中的\xa0、\t、\n(转)


\xa0 是不间断空白符   我们通常所用的空格是 \x20 ,是在标准ASCII可见字符 0x20~0x7e 范围内。 而 \xa0 属于 latin1 (ISO/IEC_8859-1)中的扩展字符集字符,代表空白符nbsp(non-breaking space)。 latin1 字符集向下兼容 ASCII ( 0x20~0x7e )。通常我们见到的字符多数是 latin1 的,比如在 MySQL 数据库中。 有如下信息:

?1'T-shirt\xa0\xa0短袖圆领衫,体恤衫\xa0,', 'V-neck\xa0\xa0V型领\xa0sleeve\xa0\xa0袖子\xa0,',

  
我们如何将其中的\xa0去掉呢,试了re模块的sub方法,发现没有作用,于是又开始查阅相关资料,终于解决了该问题。方法如下:

?12345>>> inputstring = u'\n                      Door:\xa0Novum          \t      '>>> move = dict.fromkeys((ord(c) for c in u"\xa0\n\t"))>>> output = inputstring.translate(move)>>> output'                      Door:Novum          

  
另外还有一种更简单的方法,利用split方法:

?12345>>> s'T-shirt\xa0\xa0短袖圆领衫,体恤衫\xa0'>>> out = "".join(s.split())>>> out'T-shirt短袖圆领衫,体恤衫'

  
 
可以发现利用translate方法、split()可以完美解决,并且还可以替换\t \n字符,由此又学到了新知识!
关于ord函数: ord()函数是chr()函数(对于8位的ASCII字符串)或unichr()函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的ASCII数值,或者Unicode数值,如果所给的Unicode字符超出了你的Python定义范围,则会引发一个TypeError的异常。
关于fromkeys方法: dict中的fromkeys方法目的是创建一个只有key的字典,内部利用for循环,使三个字符的asii码值成为可迭代对象(本来的整数是不可迭代的),分别对其迭代,存入字典。
关于translate方法: Python translate() 方法根据参数table给出的表(包含 256 个字符)转换字符串的字符, 要过滤掉的字符放到 del 参数中。接收到move返回的表(字典),之后对字符串进行替换。
join()方法: join(): 连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串。
join()方法语法:
str.join(sequence),其中,str指定的用来连接的字符(分隔符),sequence是被连接的字符串数组,元组,列表。返回:返回通过指定字符连接序列中元素后生成的新字符串。例如:

?1234>>>str = "-";>>>seq = ("a", "b", "c"); # 字符串序列>>>print str.join( seq );a-b-c

可见该处用join方法真的是神来之笔,可谓绝妙!
值得注意的是,split方法中不带参数时,表示分割所有换行符、制表符、空格。

本文由职坐标整理并发布,希望对同学们学习Python有所帮助,更多内容请关注职坐标编程语言Python频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程