簡體   English   中英

Python str.format()方法無法按預期工作

[英]Python str.format() method not working as expected

我正在嘗試格式化要在屏幕上打印的某些輸出。 這是我的代碼:

someString = someList[someIndex] +  '{0:<8}'.format('\t') + someList[someOtherIndex]
print someString

我的預期輸出:

abcdefghi              someOutput
abcde                  someOtherOutput

**OR**
abcdefghi       someOutput
abcde           someOtherOutput

我得到的實際輸出是:

abcdefghi              someOutput
abcde          someOtherOutput

Q.1:為什么我沒有得到預期的輸出? 具體來說,為什么第二列中的條目未對齊?
Q.2:我應該在代碼中進行哪些更改才能獲得預期的輸出?

附加信息:我正在使用Python 2.6

感謝任何幫助。

您必須在打印的第一個字符串上應用“填充”,以便它始終將“第二個”字符串“推”到同一點:

someString = '{0:<16}{1}'.format(someList[someIndex], someList[someOtherIndex])

但是,請確保所需的填充量大於必須打印的最長的第一個單詞。

您之前所做的只是簡單地打印第一個單詞,然后打印帶有填充的“ \\ t”(始終相同),最后打印第二個單詞。

暫無
暫無

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

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