擅长:python、mysql、java
<p>好吧。。。这里有很多问题。让我们从一些基本的语法开始。在</p>
<p>首先,您需要回顾一下Python中格式化的工作原理。它的工作空间为4,如果您使用的是正确的处理器,则相当于“tab”。当您定义一个函数时,该函数中包含的所有内容都应该至少超出4个空格。在函数“getWordForTwoDigits()”中,可以看到:</p>
<pre><code>def getWordForTwoDigits(amount):
...
return ...
</code></pre>
<p>返回值应该是四个空格(顺便说一句,这两个函数都是这样做的)。在</p>
<p>第二,你的else if结构是扭曲和不必要的。不要像现在这样,只需这样做:</p>
^{pr2}$
<p>然后再加上“elif”到9。在</p>
<p>还有,你说</p>
<pre><code>singlesWord = getWordForDigit(int(amount)%10)
</code></pre>
<p>但你从来没有定义过这个函数。在</p>
<p>对于如何区分196和97的实际问题,请尝试以下方法:</p>
<pre><code>def splitter(num):
sep=str(num).rsplit('.', 1)
return sep
</code></pre>
<p>“rsplit”基本上根据第一个参数中的字符将字符串分成两部分。它返回一个list[“partone”,“parttwo”],因此您需要提取列表的两个部分,并将它们转换回主代码中的int。在</p>
<p>希望有帮助!在</p>