day3字符串操作作业详解
1.day3题目
1.有变量name = "aleX leNb" 完成如下操作:
移除 name 变量对应的值两边的空格,并输出处理结果
移除name变量左边的"al"并输出处理结果
移除name变量右面的"Nb",并输出处理结果
移除name变量开头的a"与最后的"b",并输出处理结果
判断 name 变量是否以 "al" 开头,并输出结果
判断name变量是否以"Nb"结尾,并输出结果
将 name 变量对应的值中的 所有的"l" 替换为 "p",并输出结果
将name变量对应的值中的第一个"l"替换成"p",并输出结果
将 name 变量对应的值根据 所有的"l" 分割,并输出结果。
将name变量对应的值根据第一个"l"分割,并输出结果。
将 name 变量对应的值变大写,并输出结果
将 name 变量对应的值变小写,并输出结果
将name变量对应的值首字母"a"大写,并输出结果
判断name变量对应的值字母"l"出现几次,并输出结果
如果判断name变量对应的值前四位"l"出现几次,并输出结果
从name变量对应的值中找到"N"对应的索引(如果找不到则报错),并输出结果
从name变量对应的值中找到"N"对应的索引(如果找不到则返回-1)输出结果
从name变量对应的值中找到"X le"对应的索引,并输出结果
请输出 name 变量对应的值中 "e" 所在索引位置?
2.有字符串s = "123a4b5c"
1)通过对s切片形成新的字符串s1,s1 = "123"
2)通过对s切片形成新的字符串s2,s2 = "a4b"
3)通过对s切片形成新的字符串s3,s3 = "1345"
4)通过对s切片形成字符串s4,s4 = "2ab"
5)通过对s切片形成字符串s5,s5 = "c"
6)通过对s切片形成字符串s6,s6 = "ba2"
7)通过切片形成新的字符串s1,s7='132'
3.使用while和for循环分别打印字符串s="asdfer"中每个元素。
4.使用for循环对s="asdfer"进行循环,但是每次打印的内容都是"asdfer"。
5.使用for循环对s="abcdefg"进行循环,每次打印的内容是每个字符加上sb, 例如:asb, bsb,csb,...gsb。
6.使用for循环对s="321"进行循环,打印的内容依次是:"倒计时3秒","倒计时2秒","倒计时1秒","出发!"。
7.实现一个整数加法计算器(两个数相加):
如:content = input("请输入内容:") 用户输入:5+9或5+ 9或5 + 9,然后进行分割再进行计算。
8.升级题:实现一个整数加法计算器(多个数相加):
如:content = input("请输入内容:") 用户输入:5+9+6 +12+ 13,然后进行分割再进行计算。
9.咱们任意输入一串文字+数字 统计出来数字的个数
基础版本:content = input("请输入内容:") # 如fhdal234slfh98769fjdla,计算数字个数
升级:例如-wqerqkfmrek54312543wdfge45ertr6,计算数字个数,'54312543'算一个数字,类推
10.写代码,完成下列需求:
用户可持续输入(用while循环),用户使用的情况:
输入A,则显示走大路回家,然后在让用户进一步选择:
是选择公交车,还是步行?
选择公交车,显示10分钟到家,并退出整个程序。
选择步行,显示20分钟到家,并退出整个程序。
输入B,则显示走小路回家,并退出整个程序。
输入C,则显示绕道回家,然后在让用户进一步选择:
是选择游戏厅玩会,还是网吧?
选择游戏厅,则显示 ‘一个半小时到家,爸爸在家,拿棍等你。’并让其重新输入A,B,C选项。
选择网吧,则显示‘两个小时到家,妈妈已做好了战斗准备。’并让其重新输入A,B,C选项。
11.写代码:计算 1 - 2 + 3 ... + 99 中除了88以外所有数的总和?
12.判断一句话是否回文。回文:正念和反念都一样,例如:上海自来水来自海上
13.输入一个字符串,判断这个字符串中大写字母,小写字母,数字,其他字符共出现多少次,并输出出来
14.制作趣味模板程序需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进入任意现实 如:敬爱可亲的xxx,最喜欢在xxx地方干xxx
15.等待用户输入内容,检测用户输入内容中是否包含敏感字符?如果存在敏感字符提示“存在敏感字符请重新输入”,并允许用户重新输入并打印。敏感字符:“小粉嫩”、“大铁锤”
16.判断用户输入名字是否百家姓:
name = '''
赵钱李孙,周吴郑王。
欧阳西门,东郭百里。
'''
2.day3题目详解
点击查看详细内容
1.有变量name = "aleX leNb" 完成如下操作:
name = "aleX leNb"
1-1
print(name.strip())
1-2
print(name.lstrip('al'))
1-3
print(name.rstrip('Nb'))
1-4
print(name.strip('a').strip('b'))
1-5
print(name.startswith('al'))
1-6
print(name.endswith('Nb'))
1-7
print(name.replace('l','p'))
1-8
print(name.replace('l','p',1))
1-9
print(name.split('l'))
1-10
print(name.split('l',1))
1-11
print(name.upper())
1-12
print(name.lower())
1-13
print(name.capitalize())
1-14
print(name.count('l'))
1-15
print(name.count('l',0,4))
1-16
print(name.index('N'))
1-17
print(name.find('N'))
1-18
print(name.find('X le'))
print(name.index('X le'))
1-19:有两个e
print(name.index('e'))
print(name.find('e'))
index = 0 #手动记录索引
for i in name:
if i =='e':
print(index)
index += 1
for i in range(len(name)):
if 'e' == name[i]:
print(i)
2.有字符串s = "123a4b5c"
s = "123a4b5c"
2-1
s1 = s[0:3]
print(s1)
2-2
s2 = s[3:6]
print(s2)
2-3
s3 = s[::2]
print(s3)
2-4
s4 = s[1:6:2]
print(s4)
2-5
s5 = s[-1]
print(s5)
2-6
s6 = s[5:0:-2]
print(s6)
s6 = s[-3:-8:-2]
print(s6)
2-7
s7 = s[0:3:2]+s[1]
print(s7)
s7 = s1[0]+s1[-1:-3:-1]
print(s7)
s="asdfer"
n = 0
while n < len(s):
print(s[n])
n +=1
for i in s:
print(i)
for i in s:
print(s)
s= "abcdefg"
for i in s:
print(i+'sb')
s = "321"
for i in s:
print("倒计时%s秒"%(i))
else:
print("出发!")
content = input("请输入内容:")
content = content.replace(" ","") #拿到用户数据后先去空格
lst = content.split('+')
print(int(lst[0])+int(lst[1]))
8
content = input("请输入内容:")
content = content.replace(" ","")
lst = content.split('+')
count = 0
for i in lst:
count += int(i) #做累加
print(count)
9
基础版
content = input("请输入内容:")
count = 0
for i in content:
if i.isdigit(): #判断是否数字
count += 1
print(count)
升级版
a=input('输入要判断的内容:')
for i in a:
if not i.isdigit(): #判断只要是非数字就替换为空格
a=a.replace(i,' ')
a=a.split() #切割成列表,默认分隔符为空格
print(a)
print(len(a))
while True:
coming_home = input("肥家(方式A/B/C):")
if coming_home == 'A':
print('【走大路回家】')
the_way = input('公交车/步行:')
if the_way == '公交车':
print('10分钟到家')
elif the_way == '步行':
print('20分钟到家')
break
elif coming_home == 'B':
print('【走小路回家】')
break
elif coming_home == 'C':
print('【绕道回家】')
play = input('游戏厅/网吧:')
if play == '游戏厅':
print('一个半小时到家,爸爸在家,拿棍等你。')
elif play == '网吧':
print('两个小时到家,妈妈已做好了战斗准备。')
方法一
suma = 0
for i in range(1,100):
if i%20 and i!=88:
suma -=i
if i%21:
suma +=i
print(suma)
方法二
count = 1
suma = 0
while count <= 99:
if count == 88:
count = count + 1
continue
if count % 2 == 0:
suma = suma - count
elif count % 2 != 0:
suma = suma + count
count +=1
print(suma)
content = input("输入判断内容:")
if content == content[::-1]:
print("是回文")
else:
print("不是回文")
content = input("输入统计字符串:")
upper = 0
lower = 0
digit = 0
other = 0
for i in content:
if i.isupper():
upper += 1
elif i.islower():
lower += 1
elif i.isdigit():
digit += 1
else:
other += 1
print('''
大写字母:%s
小写字母:%s
数字:%s
其他字符:%s
''' %(upper,lower,digit,other))
name = input("Name:")
size = input("Size:")
like = input("Like:")
print('敬爱可亲的%s,最喜欢在%s地方干%s'%(name,size,like))
while True:
i_str = input("等待用户输入内容:")
if "小粉嫩" in i_str or "大铁锤" in i_str:
print("存在敏感字符【小粉嫩/大铁锤】请重新输入")
else:
print(i_str)
break
name = '''
赵钱李孙,周吴郑王。
欧阳西门,东郭百里。
'''
方法一:
_name = input("Name:")
if _name[0] in name:
print('是百家姓')
elif _name[0:2] in name:
print('是百家姓')
else:
print('不是百家姓')
方法二:
suma = ""
_name = input("Name:")
for i in _name:
suma += i
if suma in name:
print('是百家姓')
break
else:
print('不是百家姓')
day3字符串操作作业详解的更多相关文章
- day8文件操作作业详解
1.day8题目 1,有如下文件,a1.txt,里面的内容为: 老男孩是最好的培训机构, 全心全意为学生服务, 只为学生未来,不为牟利. 我说的都是真的.哈哈 分别完成以下的功能: a,将原文件全部读 ...
- C-常用字符串操作函数详解
//使用字符串操作应时刻注意字符串或者数组长度!!避免溢出!! 1. size_t strlen(char const *str); //计算字符串长度, 注意返回size_t类型的值, 即unsig ...
- Python字符串切片操作知识详解
Python字符串切片操作知识详解 这篇文章主要介绍了Python中字符串切片操作 的相关资料,需要的朋友可以参考下 一:取字符串中第几个字符 print "Hello"[0] 表 ...
- Python学习入门教程,字符串函数扩充详解
因有用户反映,在基础文章对字符串函数的讲解太过少,故写一篇文章详细讲解一下常用字符串函数.本文章是对:程序员带你十天快速入门Python,玩转电脑软件开发(三)中字符串函数的详解与扩充. 如果您想学习 ...
- Spring Data操作Redis详解
Spring Data操作Redis详解 Redis是一种NOSQL数据库,Key-Value形式对数据进行存储,其中数据可以以内存形式存在,也可以持久化到文件系统.Spring data对Redis ...
- day6作业详解
1.day6题目 1,老男孩好声⾳选秀⼤赛评委在打分的时候呢, 可以进⾏输入. 假设, 老男孩有10个评委. 让10个评委进⾏打分, 要求, 分数必须⼤于5分, 小于10分. 电影投票. 程序先给出⼀ ...
- day4列表作业详解
1.day4题目 day4作业 1,写代码,有如下列表,按照要求实现每一个功能 li = ["alex", "WuSir", "ritian" ...
- Java8 Stream终端操作使用详解
话不多说,自己挖的坑自己要填完,今天就给大家讲完Java8中Stream的终端操作使用详解.Stream流的终端操作主要有以下几种,我们来一一讲解. forEach() forEachOrdered( ...
- 005-Scala数组操作实战详解
005-Scala数组操作实战详解 Worksheet的使用 交互式命令执行平台 记得每次要保存才会出相应的结果 数组的基本操作 数组的下标是从0开始和Tuple不同 缓冲数组ArrayBuffer( ...
随机推荐
- 吴恩达机器学习笔记(七) —— K-means算法
主要内容: 一.K-means算法简介 二.算法过程 三.随机初始化 四.二分K-means 四.K的选择 一.K-means算法简介 1.K-means算法是一种无监督学习算法.所谓无监督式学习,就 ...
- 51nod 1225
题目 题解:看数据范围就估计是根号算法.考虑我们要求的式子: $ \sum\limits_{i = 1}^n {n - \left\lfloor {\frac{n}{i}} \right\rfloor ...
- iOS实时监控网络状态的改变
在网络应用中,有的时候需要对用户设备的网络状态进行实时监控,有两个目的: (1)让用户了解自己的网络状态,防止一些误会(比如怪应用无能) (2)根据用户的网络状态进行智能处理,节省用户流量,提高用户体 ...
- 深入理解JVM - 垃圾收集器与内存分配策略 - 第三章
引用计数算法——判断对象是否存活的算法 很多教科书判断对象是否存活的算法是这样的:给对象添加一个引用计数器,每当一个地方引用它时,计数器值就加1:当引用失效时,计数器值就减1:任何时刻计数器为0的对象 ...
- BZOJ 1612 [Usaco2008 Jan]Cow Contest奶牛的比赛:floyd传递闭包
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1612 题意: 有n头牛比赛. 告诉你m组(a,b),表示牛a成绩比牛b高. 保证排名没有并 ...
- html5--2.5新的布局元素(4)-aside/nav
html5--2.5新的布局元素(4)-aside/nav 学习要点 了解aside/nav元素的语义和用法 通过实例理解aside/nav元素的用法 aside元素(附属信息) aside元素通常用 ...
- Apache禁止或允许固定IP访问特定目录、文件、URL
1. 禁止访问某些文件/目录 增加Files选项来控制,比如要不允许访问 .inc 扩展名的文件,保护php类库: <Files ~ "\.inc$"> Order a ...
- redis持久化的方式RDB 和 AOF
redis持久化的方式RDB 和 AOF 一.对Redis持久化的探讨与理解 目前Redis持久化的方式有两种: RDB 和 AOF 首先,我们应该明确持久化的数据有什么用,答案是用于重启后的数据恢复 ...
- unreal network
frame move buffer: save move position recive server sync:All moves earlier than the ClientAdjustPosi ...
- asteris录音设置
[macro-recording] exten =>s,1,Set(CALLFILENAME=${STRFTIME(${EPOCH},UTC-8,%Y-%m-%d-%H-%M-%S)}-${CA ...