赞
踩
代码思路仅供参考,欢迎大家批评指正!
输入一个字符串 str,再输入要删除字符 c(非空格字符),大小写不区分,将字符串 str 中出现的所有字符 c 删除。提示:去掉两端的空格。
注意列表的赋值属于浅拷贝,二者共用相同的内存空间,若为了不影响原始列表,可以使用切片操作
list1 = list[:]
创建新的列表
str = input().strip()
list = list(str)
list1 = list[:]
c = input().strip()
for i in list:
if c.lower() == i.lower():
list1.remove(i)
print('result:', ''.join(list1))
输入字符串,排序后输出最大字符及该字符在原字符串中的索引。相同字符的索引取最大值。提示:用元组实现。
这里利用翻转列表的操作保证输出最大字符的索引最大值
# 相同字符取索引最大值
str = input()
listr = list(str)
listr.reverse()
str1 = list(str)[:]
str1.sort()
letter,index = str1[-1],len(listr)-listr.index(str1[-1])
print(letter,' ', index-1)
回文就是字符串中心对称,从左向右读和从右向左读的内容是一样的。
输入一个字符串,判断该字符串是否为回文,只考虑数字和字母字符,字母的大小写没有区别。
# 参考自曲同学
lst = list(input().lower())
str_alnum = [i for i in lst if i.isalnum()]
str_r = str_alnum.copy()
str_r.reverse()
if "".join(str_alnum) == "".join(str_r):
print("yes")
else:
print("no")
输入一行字符串,去掉非16进制字符,并将它转换成10进制数输出。
list16 = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E']
num = list(input())
new = []
for i in num:
if i.upper() in list16:
new.append(i)
result16 = ''.join(new)
result10 = int(result16,16)
print(result16)
print(result10)
输入字符串A(没有重复字符),输入字符串B,求在字符串A中字符的个数,这些字符必须同时又在字符串B中。提示:用in运算符。
data = input() #A
raw = input() #B
count = 0
for i in range(len(data)):
if data[i] in raw:
count = count + 1
print(count)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。