用可变长度在python中格式化 [英] Format in python by variable length

查看:62
本文介绍了用可变长度在python中格式化的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用.format()方法打印类似图案的楼梯.我尝试过了

I want to print a staircase like pattern using .format() method. I tried this,

for i in range(6, 0, -1):
    print("{0:>"+str(i)+"}".format("#"))

但这给了我以下错误:

ValueError: Single '}' encountered in format string

基本上,想法是打印

     #
    #
   #
  #
 #
#

具有类似的代码,

for i in range(6, 0, -1):
    print("{0:>i}".format("#"))

推荐答案

当前,您的代码解释如下:

Currently your code interpreted as below:

for i in range(6, 0, -1):
    print ( ("{0:>"+str(i))     +     ("}".format("#")))

因此格式字符串是由单个}"构造的,这是不正确的.您需要以下内容:

So the format string is constructed of a single "}" and that's not correct. You need the following:

for i in range(6, 0, -1):
    print(("{0:>"+str(i)+"}").format("#"))

根据需要工作:

================ RESTART: C:/Users/Desktop/TES.py ================
     #
    #
   #
  #
 #
#
>>> 

这篇关于用可变长度在python中格式化的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆