python - 如何使用索引替换 for 循环中的字符串
问题描述
def functionsdiv(S):
count = 0
for i in range(len(S)):
for k in range(9):
S.replace(S[i], str(k))
print(S)
numbers = int(S)
if numbers %3 == 0:
count+=1
return count
我这样做了,但是在任何迭代中都不会替换字符串。
一个示例输入是"23"
.
我尝试用每个可能的数字替换数字,看看是否有多少数字可以被 3 ==0
解决方案
替换操作不是就地执行(意味着它返回编辑后的字符串,但不改变原始字符串)。使用另一个变量。此外,返回循环之外。
def functionsdiv(S):
count = 0
for i in range(len(S)):
for k in range(9):
S_temp = S.replace(S[i], str(k))
print(S_temp)
numbers = int(S_temp)
if (numbers %3) == 0:
count+=1
return count
输出:
functionsdiv('23')
# 03
# 13
# 23
# 33
# 43
# 53
# 63
# 73
# 83
# 20
# 21
# 22
# 23
# 24
# 25
# 26
# 27
# 28
# 6
推荐阅读
- ios - 没有 https 时,如何在 safari ios 15 上授予相机权限?
- javascript - 如何使用正则表达式将符号与文本分开?
- f# - 在 Visual Studio 2022 中,为什么我的 F# 项目正在寻找“FSharp.Core with version (>= 6.0.2),它不存在?
- vuejs2 - vue页面重载功能——errpr
- php - 如何防止 PHP 和 Apache 中的主机头注入
- python - pyspark - 按行读取 df 以在另一个 df 中搜索
- javascript - 如何将数组中的多个对象转换为新对象?
- java - Leetcode 494 蛮力递归解决方案将变量作为属性使用,但当我将其作为参数传递时不起作用
- javascript - 如何使用“onclick”方法获取数据属性?
- mediapipe - 从 mediapipe 的 SurfaceView 中恢复位图