当前位置: 首页 > 面试题库 >

如何在python-3.x中使用字典格式化字符串?

苏运良
2023-03-14
问题内容

我非常喜欢使用字典来格式化字符串。它可以帮助我阅读所使用的字符串格式,也可以利用现有的字典。例如:

class MyClass:
    def __init__(self):
        self.title = "Title"

a = MyClass()
print 'The title is %(title)s' % a.__dict__

path = '/path/to/a/file'
print 'You put your file here: %(path)s' % locals()

但是我不能弄清楚这样做的python 3.x语法(或者甚至是可能的)。我想做以下

# Fails, KeyError 'latitude'
geopoint = {'latitude':41.123,'longitude':71.091}
print '{latitude} {longitude}'.format(geopoint)

# Succeeds
print '{latitude} {longitude}'.format(latitude=41.123,longitude=71.091)

问题答案:

由于问题是特定于Python 3的,因此这里使用的是从Python
3.6开始可用的新f字符串语法:

>>> geopoint = {'latitude':41.123,'longitude':71.091}
>>> print(f'{geopoint["latitude"]} {geopoint["longitude"]}')
41.123 71.091

注意外部单引号和内部双引号(您也可以采用其他方法)。



 类似资料:
  • 问题内容: 我想知道是否有一种简单的方法来格式化dict-outputs的字符串,例如: …,简单的str(dict)只会让您难以理解… 就我对Python的了解而言,我将不得不编写许多带有许多特殊情况和string.replace()调用的代码,而这个问题本身看起来并不太像一个1000行的问题。 请建议根据此形状格式化所有字典的最简单方法。 问题答案: 根据您对输出所做的操作,一种选择是将JSO

  • 主要内容:指定最小输出宽度,指定对齐方式,指定小数精度我们在《 第一个Python程序——在屏幕上输出文本》中讲到过 print() 函数的用法,这只是最简单最初级的形式,print() 还有很多高级的玩法,比如格式化输出,这就是本节要讲解的内容。 熟悉C语言 printf() 函数的读者能够轻而易举学会 Python print() 函数,它们是非常类似的。 print() 函数使用以 开头的转换说明符对各种类型的数据进行格式化输出,具体请看下表。

  • 问题内容: 我需要找出如何将数字格式化为字符串。我的代码在这里: 小时和分钟是整数,而秒是浮点数。str()函数会将所有这些数字转换为十分之几(0.1)。因此,而不是我的字符串输出“ 5:30:59.07 pm”,它将显示类似“ 5.0:30.0:59.1 pm”的内容。 最重要的是,我需要为我执行什么库/函数? 问题答案: 从Python 3.6开始,可以使用格式化的字符串文字或 f-strin

  • 问题内容: 我正在尝试创建如下语句: 但是,我在使用Django API的字符串格式时遇到了一些麻烦。这是我到目前为止的内容: 问题答案: MySQLdb有一种方法可以帮助解决这个问题: 文件 string_literal(…)string_literal(obj)-将对象obj转换为SQL字符串文字。这意味着,所有特殊的SQL字符都被转义,并用单引号引起来。换句话说,它执行: 用法

  • 问题内容: 我是Java新手,来自Python。在Python中,我们执行以下字符串格式设置: 如何在Java中复制相同的内容? 问题答案: 该课程看起来像您所追求的。

  • 问题内容: 目前,我仅显示键,每个键都在新行中显示: 如何在新行中将它们显示为 key :: value ? 问题答案: 通过迭代器,将生成一个键,值元组: 更新为现代符号: