【发布时间】:2022-01-23 18:16:06
【问题描述】:
完成给定的名为solve的方法,该方法以列表A为参数。
此列表包含以下类型的值:
整数(介于 1 和 99 之间,包括两者)
字符串形式的数字(介于 1 和 99 之间,包括两者),例如,'37'、'91'
数字的单词形式(介于 1 和 99 之间,包括两者)例如,“二十”、“十七”、“四十二”。
注意单词总是小写的!
您必须生成一个包含所有整数形式的值的列表并返回它。列表必须按升序排列。
例子
输入:
[1, 3, '4', '1', 'three', 'eleven', 'forty-seven', '3']
输出:
[1, 3, 4, 11, 47]
代码:
def solve(A):
for i in A:
if A[i]==int:
return A[i]
elif A[i]==str:
return int(A[i])
而且它不工作。 !谁能帮忙写代码!
【问题讨论】:
-
为什么它应该起作用?您希望从
int('forty-seven')获得什么输出?检查变量是否属于某种类型的常用方法是调用函数isinstance(),也可以使用type()从变量实例中获取类型。 -
==用于检查两个事物之间的相等性。A[i]永远不会等于int或str。不要使用A[i]==int,而是使用isinstance(A[i], int)或type(A[i]) == int。
标签: python python-3.x data-structures set