来自C/C++世界,作为Python NeWB,我编写了一个简单的字符串函数,它采用一个输入字符串(保证是ASCII)并返回最后四个字符。如果少于四个字符,我想用字母“A”来填补领导职位。(这不是一个练习,而是另一个复杂功能的重要组成部分)
有几十种方法可以做到这一点,从蛮力,到简单,再到优雅。我下面的方法虽然很实用,但似乎不是“Python式的”。在
注意:我现在使用的是Python2.6,性能不是问题。输入字符串很短(2-8个字符),我只调用这个函数几千次。在
def copyFourTrailingChars(src_str):
four_char_array = bytearray("AAAA")
xfrPos = 4
for x in src_str[::-1]:
xfrPos -= 1
four_char_array[xfrPos] = x
if xfrPos == 0:
break
return str(four_char_array)
input_str = "7654321"
print("The output of {0} is {1}".format(input_str, copyFourTrailingChars(input_str)))
input_str = "21"
print("The output of {0} is {1}".format(input_str, copyFourTrailingChars(input_str)))
输出为:
^{pr2}$Python的建议?在
用字符串格式怎么样?在
结果:
^{pr2}$这里有一个更好、更规范的选择:
^{3}$结果:
^{pr2}$我将使用简单的切片,然后使用^{} 来右对齐结果,使用
A
作为fillchar
。示例-演示-
^{pr2}$您可以简单地在原始字符串之前添加四个前哨字母“A”,然后取结尾的四个字符:
太简单了!在
相关问题 更多 >
编程相关推荐