字符串的操作

用途背景:
正则表达式专门用于匹配应用中的数据,简化字符串的处理程序,提供re模块来匹配正则表达式。

字符串的格式化:

pyhton中的格式化输出类似C语言的函数printf()、sprintf()格式化输出,因此要牢记格式化字符串代替字符的含义,下面给出一些常用的字符串替代符。

符号含义
% c格式化字符及其ASCII码
% s格式化字符串
% d格式化整形
% u无符号整形
% o格式化无符号八进制
% x格式化无符号十六进制
% X格式化无符号十六进制(大写)
% f格式化浮点数字,可指定小数点后的精度
% e用科学数字法格式化浮点数
% E同上
% g根据值的大小使用%f还是%e
% G同上
% p用十六进制数格式化变量的地址
注意:
1.如果要格式化多个值,元组中元素的顺序必须和格式化字符串中替代替代符的顺序一致,可能出现类型不匹配,抛出如下异常:
    TypeError: int argument required
2.  若要输出 % ,则须使用 ‘ % %'
字符串的合并:

使用“+”连接字符串。
如若“+”两侧都是字符串,则进行连接操作;如两侧都是数字,则进行加法操作;如若加法两侧是不同类型,将抛出异常。

使用函数join()连接字符串,
例如:使用 , 来连接字符

结果显示如下:
在这里插入图片描述

字符串的截取:
  • 字符串是序列,可以使用序列的索引获取子串
  • 通过切片对字符串实现有规律的截取
    具体格式如右:string[ start : end : step],其中string表示要取子串的原字符串变量,[ start :end :step]表示从string的第start个索引位置开始到第end个索引 之间截取字符串,截取的步长是step。索引从 0 开始计数。
  • 对多个字符串进行截取,一般使用函数spilt()。
    具体格式如右:split([ char ][ , num])
    参数char表示用于分割的字符,默认分割字符是空格;
    参数num表示分割次数,默认字符char在字符中出现的个数来划分字符串。
    字符串的比较
    • “ = = ”,“ != ”用于比较字符串的内容以及类型。
      如果比较字符串的一部分,先截取子串,在使用“ = = ”比较。
    • 比较字符串开头或结尾部分使用startwith(),或者endwith()函数,
      具体格式如右:startwith(substring [[, start ] [, end]])
      参数substring是与源字符串开头部分比较的子串
      参数start表示开始比较的位置
      参数end表示比较结束的位置
      不同的是endswith()从源字符串的尾部开始搜索
      小注:
      startwith(),endwith()相当于切片[0:n],n是源字符串中最后一个索引,startwith()endwith()不能用于比较原字符串中任一部分的子串。
      
    字符串的反转
    • 通过range()循环。
      在这里插入图片描述
      输出结果:
      在这里插入图片描述
    • 通过列表的reverse()函数实现字符串的反转。
      在这里插入图片描述
      结果如下:在这里插入图片描述
    • 通过切片实现字符串反转。
      在这里插入图片描述
      结果同上。
字符串的查找和替换
  • 查找字符串
    find()返回原字符串中第一次出现子串的索引。
    find(substring [, start [, end] ] )
    参数substring表示待查子串
    参数start表示搜索的起始位置
    参数end表示搜索的结束位置,找不到返回-1.
    rfind()参数相同,从尾部开始查询。
  • 替换字符串
    replace()实现字符串的替换,不支持正则表达式。
    replace(old, new [, max])
    参数old表示将被替换的字符串
    参数new表示替换old的字符串
    参数max表示替换次数。
字符串与日期的转换
  • time模块有函数strftime()可以实现从时间到字符串的转变。
    strftime(format [, tuple])->string
    参数format表示格式化日期的特殊字符。例如“%Y-%m- %d”
    参数tuple表示需要转换的时间,用元组储存。
    函数返回一个表示时间的字符串。
  • 字符串到时间的转变。
    字符串到时间需要使用time模块,datetime模块进行两次转换。
    1. 调用strptime()把字符串转换成一个元组。
      strptime(string, format) -> struct_time
      参数string表示要转换的字符串
      参数format表示日期时间的输出格式
      函数返回一个存放时间的元组
    2. 把表示时间的元组赋值给年,月,日三个变量。
    3. 把年月日三个变量传递给函数datetime().
      datetime(year,month,day[,minute [, second [, microsecond [, tzinfo] ] ] ] )
      参数year,month,day表示年月日,必不可少。
      函数返回一个表示datetime类型的变量。
    注意:
    格式化日期是区分大小写的,%Y,%y表示意义不相同。
    

···

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值