【问题标题】:what means % s.something()%__name__ in Python [duplicate]Python中的%s.something()%__name__是什么意思[重复]
【发布时间】:2018-03-26 20:51:12
【问题描述】:

我正在一点一点地学习 Python,而我的主要学习来源之一是别人的脚本。我试图用谷歌搜索它,但我无法将它包裹在我的头上。 % s.something()%name 是什么意思?

我无法输入确切的代码,但例如(抱歉,Maya 小示例):

mc.textScrollList(ams=False,fn='plainLabelFont',p=_ui['mainLay'],sc='%s.listSelected()' % __name__)

def listSelected(): 一些返回列表的脚本

我读到 % 它是一个模块,但我不明白它是如何与定义一起工作的,以及那里的“name”是什么意思? 我知道问题的表述有点糟糕,没有任何正常的例子,但如果有人能理解并向我解释,我将不胜感激!

谢谢!

【问题讨论】:

  • “旧”python 字符串格式,更多信息在这里pyformat.info

标签: python module


【解决方案1】:

这是一种将事物格式化为字符串的“旧”形式。首选方式(python 3 up)是

print('some{:d}'.format(22))  # with format appended and placeholder

print ( f'some{22:d}' )  # inline formatting

将数字 22 格式化为十进制字符串。您的类似,但在您的示例中,它会将__name__ 的内容格式化为您的字符串,__name__ 由您的类/模块设置 - 产生<classname>.listSelected() 的字符串。

见:https://docs.python.org/2/library/string.html#format-specification-mini-language

print('some{:d}'.format(22))
print('Hello %s' % "World")  # similar to yours - using python 3, python 2: use no ()

输出:

some22
Hello World

欲了解更多信息,请参阅Python string formatting: % vs. .format

【讨论】:

    猜你喜欢
    • 2017-01-07
    • 2020-12-13
    • 2020-09-01
    • 1970-01-01
    • 2015-02-13
    • 2023-04-10
    • 2020-04-22
    • 1970-01-01
    • 2020-06-05
    相关资源
    最近更新 更多