python - 继续在这个简单的 Python 函数中似乎不起作用
问题描述
该函数应该将字符串作为其输入并返回(如果字符串的所有成员都是数字)和该字符串的整数版本。此示例中提供的字符串是一个 3 位数字。该函数的 for 循环似乎只返回第一个数字,因此 continue 可能无法按预期工作。
e = '484'
def resolving(e):
for i, o in enumerate(e):
if o in "0123456789":
s = []
s.append(o)
i += 1
continue
elif o not in "0123456789":
print(type(e))
return e
k = str(s)
y = k.replace("'","").replace("[","").replace("]","").replace(",","").replace(" ","")
p = int(y)
print(type(p))
return p
print(resolving(e))
解决方案
因为您在循环中创建了列表。只是让它在循环之外。也代替str(s)
它使用列表的字符串表示,str.join
因为它将列表的所有元素连接成一个字符串。也不需要 continue 语句。因为如果 if 为 True,elif 将不会运行。
for i, o in enumerate(e):
s = []
if o in "0123456789":
s.append(o)
else:
print(type(e))
return e
k = ''.join(s)
p = int(y)
return p
推荐阅读
- c# - 没有 MediaTypeFormatter 可用于从媒体类型为“application/xml”的内容中读取“MYAPI”类型的对象
- python - 如何在python中渲染\left(\right)
- scala - Spark数据框加入问题
- jenkins - 如何在jenkins中将变量从sh步骤导出到外部sh步骤
- sql - 使用 T-SQL 选择具有行号的分块数据
- r - 如何使用kable格式化r表中的所有数字?
- android - 如何将上下文从适配器传递到片段?(安卓)
- c - 在 c 中初始化指向包含双指针的结构的指针数组
- javascript - 如何使按钮转到链接
- python - 我可以在python的for循环中使用变量作为索引吗?