2016-06-27 77 views
0

我想截断使用.format()字符串的最后100个字符并添加另一个100字符长字符串。我认为这应该是最明显和pythonic的方式:截断字符串中的最后n个字符使用.format()

print('{:.-100}{:100}'.format(str1, str2)) 

但它不起作用。

我能做到这样说:

print('{}{:100}'.format(str1[:-100], str2)) 

但我不认为这是美丽的或可读的代码。当然,我可以使用.replace()和.strip()和.ljust()但是...

所以我错过了我原来的破碎代码中的东西?或者我会留在第二个吗?或者它会成为使用.replace()等最pythonic的方式?

回答

0

你可以这样做:

print('{}{}'.format(str1[:-100], str2[:100])) 

至少这样,你将是一致的。

如果您需要其他方法来做到这一点,这个问题可能会有所帮助:Left truncate using python 3.5 str.format?

0

如果我在你的位置,我会接受第二个。它看起来很易读。我总是像你做的那样截断字符串。