python-3.x - 以pythonic方式查找丢失的数字
问题描述
我有两个字符串 some_str 和 actual_str。我想找出在 actual_str 中找到的 some_str 的缺失数字。
some_str = 'WATER9'
actual_str = '3123459'
pos = some_str.find('WATER')
len_actual_str = len(actual_str)
len_some_str_no_water = len(some_str.replace('WATER',''))
print(some_str)
print(actual_str)
print('Missing Digits: ',actual_str[pos: pos + len_actual_str - len_some_str_no_water])
输入:案例 1:some_str = '123WATER9' actual_str = '123456459'
预期输出:45645
案例 2: some_str = 'WATER' actual_str = '123456459'
预期输出:123456459
案例 3: some_str = 'WATER9' actual_str = '123456459'
预期输出:12345645
案例 4: some_str = 'WATER459' actual_str = '123456459'
预期输出:123456
案例 5:some_str = '12WATER' actual_str = '123456459'
预期输出:3456459
注意:如果数字存在于 actual_str 中的其他位置,则不应考虑。我的意思是 some_str 总是在开头或结尾包含一些数字。他们会在actual_str 中的相同位置匹配。
解决方案
尝试使用一个 for 循环来循环 actual_str 中的每个字符,并检查 actual_Str 中的每个字符是否在 some_str 中。
例如
some_str = 'WATER9'
actual_str = '3123459'
final_str = ''
for char in actual_str:
if char not in some_str and char.isdigit():
final_str += char
final_str 应该包含actual_str 中所有不在some_str 中的数字。
希望有帮助!
推荐阅读
- java - 如何在 java 中使用 sha-256 计算 XML 标头和正文的校验和
- node.js - 当资源缺少 access-control-allow-origin 标头时传递 CORS
- reactjs - 在 VS Code 中打开 JSDoc 会产生“除非提供 '--jsx' 标志,否则无法使用 JSX”
- javascript - 在多个地方使用相同的 SVG 图标时如何消除 HTML 代码重复?
- sql-server - 仅当该列没有不同的值时才更新表列
- java - 不公平锁如何比公平锁有更好的性能?
- vue.js - 加载和渲染状态组件 Vue
- javascript - 如何从 javascript 数组中选择具有特定类的特定 html 段落?
- node.js - NextJS SSR SSG 用户登录后或更新购物车时
- c# - C# 区域平滑问题。路径是平滑的,直到区域设置为路径