这是我的代码:
a = \
'''def fun():\n
print 'bbb'
'''
eval(a)
fun()
但显示错误:
Traceback (most recent call last):
File "c.py", line 8, in <module>
eval(a)
File "<string>", line 1
def fun():
^
SyntaxError: invalid syntax
那我该怎么办,
谢谢
eval()
带有字符串参数的参数仅用于表达式。如果要执行语句,请使用exec
:
exec """def fun():
print 'bbb'
"""
但是在执行此操作之前,请考虑是否真的需要动态代码。到目前为止,大多数事情都可以做到。
问题内容: 例如,有一个字符串。。 如何从中删除中间字符M?我不需要代码。我想知道: Python中的字符串是否以任何特殊字符结尾? 哪种更好的方法-从中间字符或创建新字符串开始,将所有内容从右移到左,而不是复制中间字符? 问题答案: 在Python中,字符串是不可变的,因此你必须创建一个新字符串。你有一些关于如何创建新字符串的选项。如果要删除出现的,请执行以下操作: 如果要删除中心字符: 你询问
问题内容: 我知道如何用以下方法覆盖字符串类: 但是,如何在str不隐式定义类的情况下使用此类而不是内置UserString类?明确地说,我想要这样: 问题答案: 这不可能。您尚未覆盖字符串类。 您不能覆盖类。您可以覆盖方法。您所做的是定义一个类,并且仅覆盖其str()方法。 但是你可以做这样的事情… 输出: 覆盖过去!
问题内容: 我是Python和RegEx的初学者,我想知道如何制作一个带符号的字符串并将其替换为空格。任何帮助都很棒。 例如: 变成: 问题答案: 一种使用正则表达式的方式: 将匹配字母数字字符和下划线 将匹配任何 非 字母数字或下划线的内容
问题内容: 我想使用pythons argparse模块来解析我的cli参数字符串。这适用于从终端传递的参数,但不适用于给定的字符串。 如果运行此脚本,则会得到以下输出: 在以某种方式在转变。如前所述,如果我从终端传递文件名,它就可以工作。 我可以想象,这与字符串编码有关。有人知道如何解决此问题吗? 问题答案: 要求序列与相同的形式。如果将字符串像sys.argv序列一样对待,则会得到。’s’成为
问题内容: 我有一个str对象,例如:。我想从此字符串运行安装方法。例如,当我打电话时它将呼叫。有什么办法吗? 问题答案: 如果在课程中,则可以使用getattr: 或者它是一个函数:
问题内容: 我必须使用字典中的值格式化字符串,但是该字符串已经包含大括号。例如: 但是,当然会导致KeyErro。 有没有办法使用不同的符号来使用? 这不是我如何在python字符串中打印文字大括号字符并在其上使用.format的重复项?因为我需要保持大括号不变,并为使用不同的定界符。 问题答案: 语境 python 2.7 允许自定义占位符语法的替代方法 问题 我们要在Python str.fo