题目:假设有一段英文,其中有单词中间的字母i误写为I,请编写程序进行矫正。

我的思路:循环切片,利用下标关系进行替换

由于str不能直接进行操作,因此要设置一个list,但list又没有find()方法,所以input()也需要用变量记录

在判定单词中的'I'时我选择使用判断左右字符是否均为空格,但要注意-1和+1可能产生的越界访问问题

若字符串第一个字符为'I',我选择跳过,即start+1;若最后一个字符为'I',我选择在列表最后加一个空字符'\0'。

需要注意切片后find()到的位置是相对于切片而言的,要得到'I'在y中的位置即I_index需要加上切片开始位置即start

x = input()
y = list(x)
start = 0
# 防止下标-1 +1的越界问题
if y[0] != 'I' and y[len(y) - 1] != 'I':pass
elif y[0] != 'I' and y[len(y) - 1] == 'I':y.append('\0')
elif y[0] == 'I' and y[len(y) - 1] != 'I':start += 1
else:y.append('')start += 1
while x[start:].find('I') != -1:I_index = x[start:].find('I') + startif y[I_index + 1] != ' ' or y[I_index - 1] != ' ':y[I_index] = 'i'start = I_index + 1
print(''.join(y))

欢迎指出错误或改进方案~

假设有一段英文,其中有单词中间的字母i误写为I,请编写程序进行矫正。相关推荐

  1. Python——(字符串)假设有一段英文,其中有单词中间的字母“i”误写为“I”,请编写程序进行纠正。

    s = input('请输入一段英文') m = s.split()#分割这一段英文,存入列表m result = [] #存放最后结果的空列表 print(m) #打印一下用户输入的内容 for i ...

  2. (正则表达式三行) 假设有一段英文,其中有单词中间的字母i误写为I,请编写程序进行纠正。

    import re sr=input('请输入一段英文:') print(re.sub(r'\BI\B','i',sr))

  3. python假设有一段英文、其中有单独的字母_峰终定律是诺贝尔奖获得者丹尼尔卡尼曼提出的。他发现,我们对一件事的整体评价,是全过程中所有元素体验的平均分。...

    [填空题]假设有列表 a = ['name', 'age', 'sex'] 和 b = ['Dong', 38, 'Male'] ,请使用一个语句将这两个列表的内容转换为字典c,并且以列表 a 中的元 ...

  4. 假设有一段英文,将单词当中英文小写字母i 写成大写字母I,请编写程序纠正

    假设有一段英文,将单词当中英文小写字母i 写成大写字母I,请编写程序纠正 jieba库 运用jieba库解答本题 友情链接 jieba库 jieba库是一款优秀的 Python 第三方中文分词库,ji ...

  5. Python 假设有一段英文,其中有单独的字母I误写为i,请编写程序进行纠正。

    输入一段英文,将其中单独字母的i修改为I,单词部分中的i不进行修改. 例: 输入:i will go with you 输出:I will go with you 输入:so do i 输出:so d ...

  6. 实现统计纸片对折关键算法。假设一张足够大的纸,纸张的厚度为 0.5 毫米。请问对折多少次以后,可以达到珠穆朗 玛峰的高度(最新数据:8844.43 米)。请编写程序输出对折 次数。

    实现统计纸片对折关键算法.假设一张足够大的纸,纸张的厚度为 0.5 毫米.请问对折多少次以后,可以达到珠穆朗 玛峰的高度(最新数据:8844.43 米).请编写程序输出对折 次数. 注意:使用循环结构 ...

  7. Python 假设有列表 a=[‘name’,’age’,’sex’]和b=[‘Dog’,38,’Male’],请编写程序将这两个列表的内容转换为字典

    假设有列表 a=['name','age','sex']和b=['Dog',38,'Male'],请编写程序将这两个列表的内容转换为字典,并且以列表a中的元素为"键",以列表b中的 ...

  8. java把一段英文拆成单词_java编程题,输入一段英文文章,单词之间都已经用空格分隔,本人想以每5个单词为一行输出,怎么写?请指教...

    我的问题是不会输出5个单词为一行.求指导!!我的代码是以下:importjava.io.*;importjava.util.*;publicclassTest2{publicstaticvoidmai ...

  9. Python字典:一段英文获取单词个数并排序

    输入一段英文,进行下面操作: (1)获取所有的单词: (2)利用字典统计单词出现的个数 (3)根据用户输入的单词,快速打印出现的次数 (4)根据单词进行排序,打印排序后的结果 (5)根据单词出现次数进 ...

最新文章

  1. 第一天写,希望能坚持下去。
  2. 关于“Xshell连接linux(deepin)时提示ssh服务器拒绝了密码,请再试一次”的问题...
  3. php spider shell,ScrapyShell使用
  4. C语言里面双分号是啥意思,问什么C程序里总是提示缺少分号;,而明明有分号?...
  5. 如何修改音乐的匹配字数
  6. Grunt构建工具能做哪些事?
  7. 计算机信息机房,计算机信息中心机房建设标准
  8. 【Java】俄罗斯方块Java版
  9. CEIWEI USBMonitor USB监控精灵 v2.3.2 USB过滤驱动
  10. 2层框架结构柱子间距_2层框架结构如何选取柱子宽度尺寸
  11. [编译原理]DO-WHILE循环语句的翻译程序设计(LR(1)方法、输出四元式)C++实现
  12. Ubuntu apt install / update错误前因后果: 连接失败 [IP: 91.189.91.* 80]
  13. android ic读卡器,NFC读卡器APP
  14. 赵铁安烧饼机器人_六旬老汉耗资发明烧饼机 企业20万欲购被拒
  15. 敏捷开发-故事与估算
  16. python 裁剪图片
  17. 学生成绩处理(函数版)
  18. 【前端必备】使用NodeJs写接口(本地连接MySQL + 连接到云服务MySQL)
  19. 欧盟委员会发布英国数据充分性决定草案
  20. JavaScript 生成唯一ID的几种方式

热门文章

  1. 详解色彩模型、色域以及颜色空间转换
  2. python脚本修改hosts文件
  3. 场景拆解六步设计法,手把手教你细化场景
  4. linux 使用dmidecode查看设备序列号
  5. 六、品达通用权限系统__pd-tools-log
  6. 霍尼韦尔启动在武汉的新兴市场中国总部;红牛商标所有者​天丝集团扩建在华生产基地 | 美通企业日报...
  7. 基于Python实现的实时聊天系统
  8. 用uni.previewImage({}) 来直接做图片的预览和识别二维码
  9. uos系统桌面怎么没有计算机图标,UOS系统体验:启动、桌面和开始菜单
  10. javascript 中的window, document, screen都有什么区别?