我正在编写一个函数来生成一个字符串的一部分,并将在另一个字符串中调用,以便它完成句子.
但是,限制是必须在引号中设置此完整字符串.它看起来像:
date = 'The date is get_date()'
其中get_date()是一个在字符串中返回日期的函数(虽然比这复杂一点).问题是python不会让我在引号内调用函数.
有任何想法吗?
谢谢
编辑:我会更具体地说明我正在尝试做什么,因为我不认为它是那么复杂,你似乎是一个有用的群体.
我有一个定义了一堆变量的配置文件(conf.py).其中一个我想操作(使用python脚本)是版权年份:
one_of_the_options = [('example1', 'Copyright 2008-CURRENTYEAR Company Name Ltd.')]
CURRENTYEAR是我想通过python脚本的输出来控制的,我的函数只是将年份作为字符串返回.
试试这个:
date = 'The date is {}'.format(get_date())
Run Code Online (Sandbox Code Playgroud)
以上使用格式化字符串,比评估字符串中的代码更简单(更安全) - 并且要评估的实际函数可以作为参数传递,以提高灵活性.例如,对于编辑后的示例:
def get_current_year():
return '2013' # just an example, not the real function
s = 'Copyright 2008-{} Company Name Ltd.'
s.format(get_current_year())
=> 'Copyright 2008-2013 Company Name Ltd.'
Run Code Online (Sandbox Code Playgroud)
格式化字符串允许您{}使用您想要的任何值替换字符串中的占位符,特别是,它可以是函数调用.阅读文档中有关格式字符串的更多信息.
| 归档时间: |
|
| 查看次数: |
1280 次 |
| 最近记录: |