簡體   English   中英

代碼顯示以交互方式運行時的結果,而不是從外殼運行時顯示的結果

[英]Code shows results when run interactively, but not when run from a shell

我從另一個張貼者那里借了這個科學記數法腳本: 以科學記數法顯示小數

def format_e(n):
    a = '%E' % n
    return a.split('E')[0].rstrip('0').rstrip('.') + 'E' + a.split('E')[1]

format_e(Decimal('40800000000.00000000000000'))
# '4.08E+10'

format_e(Decimal('40000000000.00000000000000'))
# '4E+10'

format_e(Decimal('40812300000.00000000000000'))

當從終端或Python Shell中將其作為模塊進行操作時,該函數可以正常工作。 但是,當像“ python Converter.py”那樣運行時,它將立即終止,而不會返回上述三個示例中的任何一個。

交互式解釋器自動回顯任何不返回None表達式的結果。 在腳本中,您需要顯式打印要查看的結果:

print format_e(Decimal('40800000000.00000000000000'))
print format_e(Decimal('40000000000.00000000000000'))
print format_e(Decimal('40812300000.00000000000000'))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM