我只想将我的脚本制作为应用程序。双击运行而不是在终端中运行。我以前用 automator 完成过,但现在,在 el capitalan 上它不起作用。它只给出错误而没有解释。
当我尝试使用 automator 时,出现此错误:
"The action “Run Shell Script” encountered an error."
Run Code Online (Sandbox Code Playgroud)
我也尝试了下面的技巧,但我仍然无法做到这一点。
#!/usr/bin/env python
chmod +x script.py
Run Code Online (Sandbox Code Playgroud)
解决了:
经过这两个步骤。我将“打开方式”更改为仅此文件的终端并更改了
#!/usr/bin/env python
,它可以工作。但是如果没有下面的两个步骤,它就不起作用,您需要按照所有步骤进行操作。添加
#!/usr/local/bin/python
在代码的开头。然后chmod +x myscript.py
在终端运行 。之后,将打开的应用程序更改为终端。它对我有用。
I cannot set the window size for created excel file with xlsxwriter and it always creates small window on OSX. Is there a way to set window size on xlsxwriter?
可能是因为我的 ISP 提供商的原因,有时当我不在时,互联网会出现故障,并且在我重新启动 wifi 连接之前它无法工作。所以我的脚本开始引发超时异常,直到我关闭然后打开 wifi 连接。有没有一种有效的方法可以在 osx el capan 上使用 python 2.7 自动打开/关闭 wifi?
我使用下面的代码lambda
在循环中调用函数一次,它工作但现在我试图在循环中调用函数特定时间,如3次,我找了它并找到了一些解决方案,但他们调用函数特定时间如果没有循环,当我在循环中尝试它时,没有任何变化.有没有一种有效的方法来做到这一点?
这个工作循环并只打印一次.我想要这样的东西做3次.
def once():
print "Do function once"
once.func_code = (lambda:None).func_code
once()
Run Code Online (Sandbox Code Playgroud)
下面这段代码不会改变任何东西,如果它在一个循环中,它会一直打印,如果它不起作用.
def repeat_fun(times, f):
for i in range(times): f()
def do():
print 'Do function for 3 times'
repeat_fun(3, do)
Run Code Online (Sandbox Code Playgroud)
在循环外添加计数器也有帮助,但我认为应该有更好的解决方案.
python ×4
macos ×3
python-2.7 ×2
double-click ×1
excel ×1
executable ×1
function ×1
lambda ×1
loops ×1
phantomjs ×1
shell ×1
wifi ×1
window ×1
xlsxwriter ×1