设为首页 收藏本站
查看: 872|回复: 0

[经验分享] python之字符串系列

[复制链接]

尚未签到

发表于 2018-8-6 06:22:26 | 显示全部楼层 |阅读模式
  python字符串
  1.序列的操作
  可通过len()函数验证长度,并通过索引操作得到各个元素
  例如: S=’abcd’  字符串赋值给变量S   偏移量a对应0,以此类推
  Len(S)    验证长度
  4
  S[0]     索引(有正向和反向)
  ‘a’
  S[1:3]   切片(偏移量从一开始包含一到三结束不包含三)
  ‘bc’
  S+’xyz’   支持加号合并
  ‘abcxyz’
  S*3      重复创建新字符串
  ‘abcabcabc’
  2.不可变性
  例子中没有任何操作对原始字符串进行改变.每个字符串都被定义为新的字符串作为其结果
  即不能通过对字符串某一位置进行赋值来改变字符串,但可以通过建立新的字符串并以同一个变量名对其进行赋值,python在运行过程中会清理就的对象.
  例如 S=’abc’
  S[0]=’z’   希望将S字符串的第0偏移位变成z(这样操作回报错)
  ...error..
  S=’z’+S[1:]   可以重新赋值得到新的字符串
  ‘zbc’
  注意:在核心类型中,数字,字符串,元组是不可变的(不可变性用来保证在程序中保持一个对象固定不变)
  ,列表和字典是可变的(可完全自由改变,体现灵活性)
  3.类型特定的方法
  字符串有一些独特的操作作为方法存在
  例如:字符串的find方法是一个基本的子字符串查找操作(将返回一个传入子字符串的偏移量,或没有找到返回 -1 )
  S.find(‘bc’)
  1        (指偏移量是一)
  例如:字符串replace方法是对全局进行搜索和替换
  S.replace(‘bc’,’XYZ’)
  ‘aXYZ’
  S   (字符串是不可变的)
  ‘abc’
  还有一些方法实现通过分隔符将字符串拆分为子字符串(变得简单),大小写转换,测试字符串的内容(数字字母或其他),去掉字符串后的空格字符等
  例如 line=’aaa,bbb,cccc,dd’

  >> line.split(‘,’)           拆分
  [‘aaa’,’bbb’,’cccc’,’dd’]
  >> S=’abc’               小写换大写
  >> S.upper()
  >> ‘ABC’
  >> S.isalpha()          测验字符串
  ‘True’
  >>Line=’aaa,bbb,cccc,dd\n’
  >>Line=Line.rstrip()     去掉空格
  >>Line
  ‘aaa,bbb,cccc,dd’

  格式化的高级代替操作

  >> ‘%s,kjil,and %s’ % (‘spam’,’SPAM!’)   (%s特指字符串)
  ‘spam,kjil,and SPAM!’
  >> ‘{0},lmm,and {1}’.format(‘nna’,’kkpo’)
  ‘nna,lmm,and kkpo’

  4.寻求帮助
  dir()  内置函数,将会返回一个列表,包含对象的所有属性(方法也是函数属性,所以也会出现表中)
  help()  具体查询他们是做什么的
  例如  对于字符串S

  >> dir(S)
  ['add', 'class', 'contains', 'delattr', 'doc', 'eq', 'format', 'ge', 'getattribute', 'getitem', 'getnewargs', 'getslice', 'gt', 'hash', 'init', 'le', 'len', 'lt', 'mod', 'mul', 'ne', 'new', 'reduce', '__reduce_ex', 'repr', 'rmod', 'rmul', 'setattr', 'sizeof', 'str', 'subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
  >> help(S.replace)
  Help on built-in function replace:

  replace(...)
  S.replace(old, new[, count]) -> string
  

Return a copy of string S with all occurrences of substring  
old replaced by new.  If the optional argument count is
  
given, only the first count occurrences are replaced.
  

  (END)
  5..编写字符串的其他方法
  例如:反斜线转义序列
  S=’A\nB\tC’     (\n是换行,\t是tab键)
  len(S)
  5
  ord(‘\n’)      \n的ASCII值
  10
  Python允许字符串在单引号或双引号中(代表相同的东西),也允许三个引号(单或双)中包括多行字符串常量,这种形式所有的行都合并在一起,并在每行末尾增加还行符

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-547221-1-1.html 上篇帖子: python 实现google authenticator 认证 下篇帖子: Python学习17:使用Python拷贝文本文件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表