擅长:python、mysql、java
<ol>
<li>您的代码示例中没有定义NewPrices</li>
<li>split()返回一个列表</li>
</ol>
<p>要想完成你想做的事情,最直接的方法是:</p>
<pre><code>total = sum([int(x) for x in TotalCOSTS.read().split(',') if x.isdigit() == True])
</code></pre>
<p>但这使得一些超级简化的假设并不总是准确的。例如,如果某个值2.99美元,int()将把它转换为3。总的来说,你要考虑以美分为单位的价格(你使用的是哪种货币的idk,但以美元为单位,100美分=1美元),因此2.99美元=299美分。你知道吗</p>
<p>所以你真的想要这样的东西:</p>
<pre><code>total = sum([float(x)*100 for x in TotalCOSTS.read().split(',') if x.isnumeric() == True])/100
</code></pre>