【发布时间】:2012-10-03 23:32:50
【问题描述】:
我有这个任务:
编写一个函数
smallnr(x),它接受一个数字x,如果x是一个0和6之间的整数,它返回数字的名称, 否则它只是将x作为字符串返回。
我做了以下事情:
def smallnr(x):
if x>6:
return str(x)
else:
lst=['zero','one','two','three','four','five','six']
return (lst[x])
这行得通,但现在我必须这样做:
使用a部分中的函数
smallnr,编写一个函数convertsmall(s)将文本s作为输入并返回文本s将小数(0 到 6 之间的整数)转换为它们的 名字。例如,convertsmall('我有 5 个兄弟和 2 个姐妹,共有 7 个兄弟姐妹。') “我有五个兄弟和两个姐妹,一共有 7 个兄弟姐妹。”
我知道我需要以某种方式使用split() 和isnumeric(),但我不知道如何将它们放在一起并仅更改字符串中的数字。
有什么建议吗?
【问题讨论】:
-
我会使用正则表达式搜索
\b(\d+)\b