中国高校课件下载中心 》 教学资源 》 大学文库

上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)CT04 字符串计算

文档信息
资源类别:文库
文档格式:PPT
文档页数:28
文件大小:168KB
团购合买:点击进入团购
内容简介
上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)CT04 字符串计算
刷新页面文档预览

字符串计算

字符串计算

文本数据 ·计算机应用 -科学计算 一信息管理 ·信息管理中大量的数据都是文本数据. 一如:姓名,地址,简历等等 一小测验:身份证号码,电话号码等是数值? ·计算机中用字符串来表示文本数据. Lu Chaojun,SJTU 2

文本数据 • 计算机应用 – 科学计算 – 信息管理 • 信息管理中大量的数据都是文本数据. – 如:姓名,地址,简历等等 – 小测验:身份证号码,电话号码等是数值? • 计算机中用字符串来表示文本数据. Lu Chaojun, SJTU 2

字符串类型 。字符串:字符序列 ·字符串字面值:用一对引号(单/双/三)括住. 'hello world' "~!@#$号^&*" "汉字也是字符" line one, line two line one line七wo""" Lu Chaojun,SJTU 3

字符串类型 • 字符串:字符序列 • 字符串字面值:用一对引号(单/双/三)括住. 'hello world' "~!@#$%^&*" "汉字也是字符" '''line one, line two''' """line one, line two""" Lu Chaojun, SJTU 3

字符的转义 ·字符串本身含有引号怎么办? 一含有单引号:串用双引号括住 "I'm a student. 一含有双引号:串用单引号括住 'He said "I am a student"to the teacher. 一两者都有: He said,"I'm a student."这个串该用什么引号呢? ·更一般的做法:用escape-字符1来转变字符含义 "He said,\"I'm a student. -以后会学到其他一些字符的转义情形 Lu Chaojun,SJTU 4

字符的转义 • 字符串本身含有引号怎么办? – 含有单引号:串用双引号括住 "I'm a student." – 含有双引号:串用单引号括住 'He said "I am a student" to the teacher.' – 两者都有: He said, " I'm a student."这个串该用什么引号呢? • 更一般的做法:用escape字符\来转变字符含义 "He said, \"I'm a student.\"" – 以后会学到其他一些字符的转义情形 Lu Chaojun, SJTU 4

字符串的输入 ·错误输入: >>>str input("Enter a string:" Enter a string:John 原因:input()是把输入当成表达式来计 算的! ·解决方法: -输入时加上引号 -使用raw input() Lu Chaojun,SJTU 5

字符串的输入 • 错误输入: >>>str = input("Enter a string: ") Enter a string: John • 原因:input()是把输入当成表达式来计 算的! • 解决方法: – 输入时加上引号 – 使用raw_input() Lu Chaojun, SJTU 5

input-与raw_input ·例:比较 >>>x input() >>>x raw input ( "John John >>>x >>>x >>>x input() >>>x raw input ( 3*4+2 3*4+2 >>>x >>>x ·可见raw input()将输入当成字符串数 据。 Lu Chaojun,SJTU 6

input与raw_input • 例:比较 >>>x = input() >>>x = raw_input() "John" John >>>x >>>x >>>x = input() >>>x = raw_input() 3*4+2 3*4+2 >>>x >>>x • 可见raw_input()将输入当成字符串数 据. Lu Chaojun, SJTU 6

字符串操作:取字符 ·字符串是字符序列,可通过位置索引访问每个字 符. [] -对长度为n的字符串,索引可以 人是大于0的数:自左向右为0~n-1,或者 人是负数:自右向左为-1,-2,-3,,-n -例如:若str="Hello Bob",则 strO]或str-9]是'H strl5]或str-4是' str8]或str-1刂是'b' str9]或str-10越界出错

字符串操作:取字符 • 字符串是字符序列,可通过位置索引访问每个字 符. [] – 对长度为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]越界出错

字符串操作:取子串 ·切段:取一个索引范围内的字符 [:] -所取子串:位置索引从start~end-1 -start或/和end可省略,缺省值为串的首尾 -例如:若str="Hello Bob",则 strO:3]是'Hel" strl5:9]是'Bob' str:5]即str0:5] str[5:]即strl5,9] str:]即str0:9]

字符串操作:取子串 • 切段:取一个索引范围内的字符. [:] – 所取子串:位置索引从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]

字符串操作:连接 ·两字符串的连接 -例如: "Hello"+"Bob"得到"HelloBob" ·一个字符串的重复 -例如: 3*"Hi"和"Hi"*3都得到"HiHiHi'" 。串长度函数len(0

字符串操作:连接 • 两字符串的连接 + – 例如: "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+"." -这是简单查找:利用位置规律来定位. 人例如:定长记录文件 一若是月份全称怎么办?

编程实例:表查找 • 在一个数据表里查找目标 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+"." – 这是简单查找:利用位置规律来定位. ©例如:定长记录文件. – 若是月份全称怎么办?

共28页,试读已结束,阅读完整版请下载
刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档