在 python 中右对齐用户输入

Right align user input in python

我有一个问题,我必须向用户询问 his/her 地址,然后换行,地址中有一个逗号。这样做之后,将整个事情对齐,我一直在尝试解决这个问题,但我只能做 2 个中的一个,拆分或对齐。这是我的代码:

def Q5():
    str = input("Enter your address (separate lines with comma) :\n")

    for c in str:
        print(c, end="")
        if(c == ","):
            print("")


    #print (str.rjust(50))

Q5()

请帮我解决这个问题。 提前致谢

Python有一个split函数,以splitting字符为参数:

x = "this,is,a,string"
split_string = x.split(",")
print split_string

returns

['this', 'is', 'a', 'string']

这是一个包含所有单词的数组。您想将所有这些都右对齐,这样就可以了

right_aligned = [str.rjust(50) for str in split_string]

然后这些可以用换行符连接:

"\n".join(right_aligned)

returns

                                          this
                                            is
                                             a
                                        string