下午脑子瓦特,想了半天也没有想出算法,刚刚抽风终于实现了,特此记录。 ̄□ ̄||

题目

(a)创建一个名字为 findchr()的函数,findchr()要在字符串 string 中查找字符 char,找到就返回该值的索引,否则返回-1.

(b)创建另一个叫 rfindchr()的函数,查找字符 char 最后一次出现的位置.它跟 findchr()工作类似,不过它是从字符串的最后开始向前查找的.

(c)创建第三个函数,名字叫 subchr(),subchr()跟 findchr()类似,不同的是,如果找到匹配的字符就用新的字符替换原先字符.返回修改后的字符串.

注意:以上均不能使用string.*find()或者 string.*index()函数和方法 

def findchr(string, char):
if char in string:
i=0
while string[i:i+len(char)]!=char:
i+=1
else:
return i
else:
return -1 def rfindchr(string, char):
if char in string:
i=0
while i<(len(string)-len(char)+1):
if string[i:i+len(char)]!=char:
i+=1
else:
s=i
i+=1
else:
return s
else:
return -1 def subchr(string, origchar, newchar):
if origchar in string:
i=0
while string[i:i+len(origchar)]!=origchar:
i+=1
else:
new_string=string[:i]+newchar+string[(i+len(origchar)):]
return new_string
else:
return -1

  

#运行结果
print(findchr('xabcxxxx', 'abc'))
print(rfindchr('abcxxxxabc', 'abc'))
print(subchr('abcxxxx', 'abc','lilip')) 1
7
lilipxxxx

  

《python核心编程第二版》课后习题6-12答案的更多相关文章

  1. python 核心编程第二版 课后习题 第11章

    11-3 函数.在这个练习中,我们将实现 max()和 min()内建函数. (a) 写分别带两个元素返回一个较大和较小元素,简单的 max2()核 min2()函数.他们应该可以用任意的 pytho ...

  2. python核心编程第二版笔记

    python核心编程第二版笔记由网友提供:open168 python核心编程--笔记(很详细,建议收藏) 解释器options:1.1 –d   提供调试输出1.2 –O   生成优化的字节码(生成 ...

  3. Python核心编程(第二版)PDF

    Python核心编程(第二版) 目录 第1部分 Python核心第1章 欢迎来到Python世界1.1 什么是Python1.2 起源1.3 特点1.3.1 高级1.3.2 面向对象1.3.3 可升级 ...

  4. 拒绝从入门到放弃_《Python 核心编程 (第二版)》必读目录

    目录 目录 关于这本书 必看知识点 最后 关于这本书 <Python 核心编程 (第二版)>是一本 Python 编程的入门书,分为 Python 核心(其实并不核心,应该叫基础) 和 高 ...

  5. Python核心编程第二版(中文).pdf 目录整理

    python核心编程目录 Chapter1:欢迎来到python世界!-页码:7 1.1什么是python 1.2起源  :罗萨姆1989底创建python 1.3特点 1.3.1高级 1.3.2面向 ...

  6. 《python核心编程第二版》第8章习题

    8–1. 条件语句. 请看下边的代码 # statement Aif x > 0:# statement Bpasselif x < 0:# statement Cpasselse:# s ...

  7. 《python核心编程第二版》第7章习题

    7–1. 字典方法.哪个字典方法可以用来把两个字典合并到一起? 答:dict1.update(dict2) 7–2. 字典的键.我们知道字典的值可以是任意的Python 对象,那字典的键又如何呢?请试 ...

  8. 《python核心编程第二版》第5章习题

    5-1 整形 讲讲 Python 普通整型和长整型的区别 答:普通整型 32位,长整数类型能表达的 数值仅仅与你的机器支持的(虚拟)内存大小有关 5-2 运算符(a) 写一个函数,计算并返回两个数的乘 ...

  9. 《python核心编程第二版》第4章习题

    4–1. Python 对象.与所有 Python 对象有关的三个属性是什么?请简单的

随机推荐

  1. Android上禁止屏幕旋转

    看网上讲了很多,设置很多属性,设置了很多,其实最关键的一点是这个 @Overrideprotected void onResume() { /** * 设置为横屏 */ if(getRequested ...

  2. Repeater中使用条件的两种方法

    1.使用三目运算符 display=<%#(Eval("Sex", "{0}") == "01") ? "none" ...

  3. Visual Studio 2013 更新 NuGet 包管理器

    Ø  前言 使用 Visual Studio 中的 NuGet 包管理器下载程序时,有时可能出现类似的错误:. 5.   在"联机"选项中搜索"NuGet",选 ...

  4. 最好用的js前端框架、组件、文档在线预览插件

    这里收集的都是个人认为比较好的js框架.组件 js前端ui框架 此处列举出个人认为最好的几个框架(排序即排名),现在好点的框架商用都需要付费,以下几个也不例外,但是由于组件丰富,都可以作为企业应用的完 ...

  5. 20155324 《Java程序设计》实验五 网络编程与安全

    20155324 <Java程序设计>实验五 网络编程与安全 实验内容 任务一 编写MyBC.java实现中缀表达式转后缀表达式的功能 编写MyDC.java实现从上面功能中获取的表达式中 ...

  6. sql库连sql中间库连orcle库增删改查方案

    ---中间库建立存储过程create procedure Proc_exec@SQL nvarchar(MAX)ASexec(@SQL) GO---web服务器执行语句 --查 select * fr ...

  7. PPT制作

    0.[整体风格]整体风格统一 界面排版 0.1 字体大小: 0.2 字体颜色: 0.3 字体的种类统一(不是指只取一种字体)) 1.[表达]结构化表达: 2.[取色]取色风格统一: 技巧:主色不超过三 ...

  8. [C++]PAT乙级1007.素数对猜想 (20/20)

    /* 1007. 素数对猜想 (20) 让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数.显然有 d1=1 且对于n>1有 dn 是偶数.“素数对猜想”认为“存在无穷 ...

  9. ES5新增内容

    一.数组API实际开发中forEach和map会多一些=>是es6语法中的arrow function举例:(x) => x + 6相当于function(x){return x + 6; ...

  10. Spark的四种部署方式并对应四种提交方式

    1 Local模式     本地模式  local模式 一台机器即可,开箱即用 不指定master,或者 --master  local  local[N]  local[*] local模式下,使用 ...