python-3.x 如何使用带占位符的格式化变量和用户输入的文本?

fumotvh3  于 2023-02-10  发布在  Python
关注(0)|答案(1)|浏览(134)

如何使用带占位符的格式化变量和用户输入的文本?
也许这个问题不是很精确,但是我是从书上学Python的,书上通常都是纯文本,没有例子,但是我想实现这样的模式:
**** Word ****

  1. Word-由用户输入文本
  2. *-取决于有多少字符得到输入的单词(在本例中单词由4个字符组成。因此,4星)
    1.如您所见,Word前面有星号,并且在单词的开头和结尾有空格。
    这是我的代码
word = input()
x = 2 + 3 * len(word)       # <---Lenght of the word * 3 + 2 spaces
print("{:*^x}".format(word))

因此,我有错误。X在{:*^x}中是在int()中,但在括号中被视为str()对象。如何排除它?任何print("{:x^"x"}"都将被视为错误。这是第一个问题。第二个问题是,如何实现文本前后的空格。我不能在.format()中添加" "两次。
错误为:ValueError: Unknown format code 'x' for object of type 'str'
对于任何解决方案,建议,我将非常感谢。但是,我在初级水平,所以任何简单的解决方案是受欢迎的。谢谢!
我试过许多方法,但都没有成功.

gv8xihay

gv8xihay1#

我找到答案了。只要和狗一起走就可以了。正确的代码是:

word = input()
x = len(word)
print("*" * x + " {} ".format(word) + "*" * x)

相关问题