草庐IT

exec_SELECTgetRows

全部标签

php - 从命令行运行脚本和使用 PHP 从 exec() 运行脚本有什么区别?

我正在尝试使用PHP中的exec()运行Python脚本。当我直接使用cmd窗口运行命令时,我的命令工作正常,但当我从PHP中的exec()运行它时,它会产生错误。我的Python脚本使用NTLK找到专有名词。示例命令:"C:\Python25\python.exe""C:\wamp\projects\python\trunk\tests\find_proper_nouns.py""IwenttoLondonthismorning"当我从cmd运行它时返回[London],但是当我从exec()。脚本肯定可以正常运行-如果我将python脚本更改为print"HelloWorld"则返

python 如何使用 setattr 或 exec 创建私有(private)类变量?

我刚刚遇到这样一种情况,在使用setattr或exec时,pseudo-private类成员名称没有被破坏。In[1]:classT:...:def__init__(self,**kwargs):...:self.__x=1...:fork,vinkwargs.items():...:setattr(self,"__%s"%k,v)...:In[2]:T(y=2).__dict__Out[2]:{'_T__x':1,'__y':2}我已经尝试了exec("self.__%s=%s"%(k,v))也得到了同样的结果:In[1]:classT:...:def__init__(self,**

python - Python中exec和eval的使用

所以我明白了exec和eval以及compile的作用。但为什么我需要使用它们?我不清楚使用场景。任何人都可以给我一些例子,以便我更好地理解这个概念。因为我知道这都是理论。 最佳答案 我将给出一个示例,其中我使用了eval并且我认为它是最佳选择。我正在编写一个简单的软件测试实用程序……用来测试学生的练习是否符合作业要求。目标是为一个简单的配置文件提供一种方法作为测试规范(解决使用编程语言描述/记录/实现基本编程任务的测试用例的“先有鸡还是先有蛋”的问题).我的工具基于标准库中的ConfigParser。但是,我确实希望能够表示任意P

python - 如何使用 tcl exec 命令运行 python 脚本

我有一个tcl驱动程序脚本,它依次调用其他几个程序。我想从我的tcl脚本调用python脚本。假设这是我的python脚本“1.py”#!/usr/bin/python2.4importosimportsystry:fi=open('sample_+_file','w')exceptIOError:print'Can\'topenfileforwriting.'sys.exit(0)tcl脚本是“1.tcl”#!/usr/bin/tclshproccall_python{}{execpython1.py}这不会给出任何错误,但同时它不会执行python脚本中存在的操作。应该用什么替换1

python - 在 python 3 中的函数中创建动态命名变量/理解 python 3 中的 exec/eval/locals

首先,我要说的是,我阅读了很多关于创建动态命名变量的类似主题的帖子,但它们大多与Python2相关,或者它们假定您正在使用类。是的,我读了BehaviorofexecfunctioninPython2andPython3.我也知道创建动态命名的变量在99%的时间里是一个坏主意,字典是获得的方式,但我只想知道它是否仍然可能以及exec和locals在python中的工作方式3.我想展示一些示例代码来说明我的问题(fibonacci计算斐波那契数,ListOfLetters提供["A","B",...]):deffunctionname():forindex,buchstabeinenum

python - Windows 上的 os.exec

我有一个脚本将os.execvp调用到另一个Python实例中。这样做之后,我似乎附加到cmd.exe实例,而不是我刚刚创建的Python实例。然而,Python实例响应Ctrl+C。H:\bin>Python3.2.1(default,Jul102011,21:51:15)[MSCv.150032bit(Intel)]onwin32Type"help","copyright","credits"or"license"formoreinformation.>>>print('hi')Can'tfindfile('hi')H:\bin>H:\bin>KeyboardInterrupt>>

python - 如何只导入包中没有 exec __init__.py 的子模块

当从包中导入子模块时,包文件夹中的__init__.py文件将首先执行,我该如何禁用它。有时我只需要一个包中的一个功能,导入整个包有点重。例如,pandas.io.clipboard模块不依赖于pandas中的任何其他函数。frompandas.io.clipboardimportclipboard_get将导入函数,但也会导入所有pandas公共(public)模块。是否有一些方法可以只导入剪贴板模块,因为它是我自己的应用程序文件夹中的一个模块。 最佳答案 没有,设计。如果你想在导入子模块时避免太多开销,你只需使用空的__init

python - 使用 exec 执行一段 python 代码,捕获它的所有输出?

执行一堆python代码的好方法是什么,比如execmycode,并将它打印到stdout的所有内容捕获到一个字符串中? 最佳答案 尝试替换默认的sys.stdout,就像这个片段:importsysfromStringIOimportStringIObuffer=StringIO()sys.stdout=bufferexec"print'Hello,World!'"#remembertorestoretheoriginalstdout!sys.stdout=sys.__stdout__printbuffer.getvalue()

python - 为什么无法访问 Python exec 中的模块级变量?

我正在尝试在project中使用Python的exec执行嵌入式Python代码。我遇到的问题是,在exec语句中在模块级创建的变量不可访问相同的模块。假设您有以下Python程序:x=5deffoo():printxfoo()如果你将以上四行放在一个文件中并运行它,它就没有问题。但是,如果您尝试从exec语句中运行同一段代码,它将无法运行。这是我们之前的程序,在exec语句中:import__builtin__global_env={'__builtins__':__builtin__}local_env=dict()exec"""x=5deffoo():printxfoo()"""

python - 如何从 Python 中的 exec 或 execfile 获取错误的行号

假设我有以下多行字符串:cmd="""a=1+1b=[2+2,4+4,]borkborkbork"""我想在特定范围内执行它:scope={}exec(cmd,scope)printscope['b']命令的第6行有一个SyntaxError,我希望能够将其报告给用户。我如何获得行号?我试过这个:try:exec(cmd,scope)#...但我得到的是exec语句的行号,而不是多行命令中的行号。更新:事实证明,我为这个示例任意选择的异常类型SyntaxError的处理不同于任何其他类型的处理。澄清一下,我正在寻找一种解决方案来应对任何类型的异常。 最佳答案