Python学习---第8天---String处理

1、关于print(string)

  help(print)会显示这个函数的具体信息:

  

  也就是说,他会在输出给定的string之后,在之后追加一个"\n"输出,如果我们的string之中已经有了回车换行,就会输出2个回车换行,以至于出现一个空行。

解决方法1:

  print("string",end="\n")可以组织自动追加"\n"

解决方法2:

 使用strip()内建函数


2、关于strip()内建函数

  string.strip()默认去掉string左右两边的空格、\n、\r等字符

  问题:想要输出类似Python脚本这样的依靠缩进的代码文件的时候,如果没有了左边的空格字符,整个格式就乱了

  替代方法:

  string.lstrip()   #删除string左边的空格等字符

  string.rstrip()   #删除string右边的空格等字符

  strip()删除指定字符:

  只是删除右边的回车,不删除空格:stirng.rstrip("\n")

  如果以“#”开头,删除#,否则不处理:string.lstrip("#")


3、关于replace()函数---替换

  语法:string.replace(old,new)

  用途:把指定字符替换为另外的字符,方便处理。

  缺点:不支持正则表达式

  用途:很实用,如统计文件的单词的个数(把特殊字符替换为空格,然后压缩re空格,然后计数)。

  

4、re.sub()函数---压缩

  语法:import re;re.sub(正则表达式,替换为,要处理的string对象)

  举个栗子:

  

5、按照空格拆分&计数

  

经过核对发现,多了1个!明明只有10个单词。原来是语句末尾最后一个“?”的缘故,把“?”替换为了“ ”空格,之后又按照空格拆分,最后一个就是空格,空格之后就没有什么了,所以多拆出来一个""单词。

 

6、字符串的比较:

Python3以前比较用的是cmp函数,但是我装的是Python3,没有cmp函数,取而代之的是oprater模块下面的这些函数:

[python]  view plain  copy
  1. operator.lt(a, b)   
  2. operator.le(a, b)   
  3. operator.eq(a, b)   
  4. operator.ne(a, b)   
  5. operator.ge(a, b)   
  6. operator.gt(a, b)   
  7. operator.__lt__(a, b)   
  8. operator.__le__(a, b)   
  9. operator.__eq__(a, b)   
  10. operator.__ne__(a, b)   
  11. operator.__ge__(a, b)   
  12. operator.__gt__(a, b)   

这几个函数就是用来替换之前的cmp的,之前使用cmp的同胞们,咱们以后就换上面这些函数咯。

先简单说下这几个函数的意思吧。

lt(a, b) 相当于 a < b

le(a,b) 相当于 a <= b

eq(a,b) 相当于 a == b

ne(a,b) 相当于 a != b

gt(a,b) 相当于 a > b

ge(a, b) 相当于   a> =   b

函数的返回值不是布尔哦。这点需要注意,还是跟cmp一样返回的是数值哦。

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值