网站大量收购闲置独家精品文档,联系QQ:2885784924

CT04字符串计算AD455.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CT04字符串计算AD455

字符串操作:取字符 字符串是字符序列,可通过位置索引访问每个字符. string[index-expr] 对长度为n的字符串,索引可以 是大于0的数:自左向右为0 ~ n?1, 或者 是负数:自右向左为?1, ?2, ?3,…, ?n 例如:若str = “Hello Bob”,则 str[0]或str[?9]是‘H’ str[5]或str[?4]是‘ ’ str[8]或str[?1]是‘b’ str[9]或str[?10]越界出错 字符串操作:取子串 切段:取一个索引范围内的字符. string[start:end] 所取子串:位置索引从start ~ end?1 start或/和end可省略,缺省值为串的首尾 例如:若str = “Hello Bob”,则 str[0:3]是‘Hel’ str[5:9]是‘ Bob’ str[:5]即str[0:5] str[5:]即str[5,9] str[:]即str[0:9] 字符串操作:连接 两字符串的连接 string1 + string2 例如: “Hello” + “Bob”得到“HelloBob” 一个字符串的重复 例如: 3*“Hi”和“Hi”*3都得到“HiHiHi” 串长度函数len() 编程实例:表查找 在一个数据表里查找目标 def main(): months=“JanFebMarAprMayJunJulAugSepOctNovDec” n = input(“Enter month number (1-12): ”) pos = (n-1)*3 monthAbbr = months[pos:pos+3] print “The month abbreviation is”,monthAbbr+”.” 这是简单查找:利用位置规律来定位. 例如:定长记录文件. 若是月份全称怎么办? 字符串的机内表示 与数值一样,计算机内用二进制数表示每一个字符. 因此操作字符串本质上仍然是数值运算. 表示字符的这个数值称为字符的编码. 这与密码通信的做法是一样的. 问题:计算机采用什么字符集?其中每个字符用什么编码? 对这个问题的不同回答就导致了许多不同的字符编码系统. 例如:字符集只包含A~Z,分别用1~26表示. “8 5 12 12 15”是什么意思? 编码标准 不同计算机若用不同编码体系,则彼此无法沟通. 标准化 ASCII:单字节编码 只用到7位: 0~127 96个可打印字符,32个控制字符 利用8位可扩充ASCII: 0~255 GB2312:两字节(6763个汉字) GB18030:最多四字节(70244个汉字) Unicode:最多四字节. 字符与编码 求给定字符的编码: ord() ord(‘a’)可得97 求给定编码的字符:chr() chr(97)可得‘a’ 可见Python 2.7支持ASCII. 支持中文编码吗? ”你好” print “你好” 编程实例:编码与解码 编码 message=raw_input(“Enter the message to encode: “) for ch in message: print ord(ch), 解码 code = raw_input(“Enter the code of message: “) message = “” for numStr in string.split(code): num = eval(numStr) message = message + chr(num) print “The decoded message is:”,message 字符串库 Python提供的string库包含了很多有用的字符串处理函数 例如split():将字符串拆分成子串 string.split(“Hello string library!”) 返回结果:[‘Hello’,’string’,’library!’] string.split(“32,24,25,57”,”,”) 返回结果:[’32’,’24’,’25’,’57’] 字符串库(续) 一些常用函数 capitalize(s): 使s首字母大写 capwords(s): 使s的每个单词首字母大写 center(s,width), ljust(s,width), rjust(s,width): 使s变成width宽度且居中/左对齐/右对齐 count(s,sub): sub在s中出现次数 find(s,sub), rfind(s,sub): 在s中找sub的首次/末次出现 join(seq): 将串序列中的串合并成一个串,分隔符默认为空格 lower(s), upper(s): 将串变成小写/大写 lstrip(s), rstrip

文档评论(0)

wuyoujun92 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档