python - 无法保存海龟图形图像
问题描述
我正在使用 excel VBA 调用 python 文件来绘制海龟图形并将其保存在 .ps 文件中,但不保存文件。当我直接从命令提示符执行时,它会保存文件。有人可以帮忙吗!
这是VBA命令
Sub RunPythonScript()
'Declare our variablesstrong text
Dim objShell As Object
Dim PythonExe, PythonScript As String
Dim a, b, c, k, t As Integer
'Creae as a new shell Object
Set objShell = VBA.CreateObject("Wscript.Shell")
a = Range("e3").Value
b = Range("f3").Value
c = Range("g3").Value
k = Range("h3").Value
'Provide the file path to the Python Exe
PythonExe = """C:\Windows\py.exe"""
PythonScript = "D:\comsol\code0.5.py"
objShell.Run PythonExe & PythonScript & " " & a & " " & b & " " & c & " " & k
End Sub
这是python代码
import os
import sys
t=turtle.Turtle()
a=int(sys.argv[1])
b=int(sys.argv[2])
c=int(sys.argv[3])
k=int(sys.argv[4])
for i in range(k):
t.color("Black","Black")
t.begin_fill()
t.forward(a)
t.left(90)
t.forward(b)
t.left(90)
t.forward(a)
t.left(90)
t.forward(b)
t.end_fill()
t.penup()
t.left(90)
t.forward(c+a)
t.pendown()
t.color("Yellow","Yellow")
t.begin_fill()
t.forward(a)
t.left(90)
t.forward(b)
t.left(90)
t.forward(a)
t.left(90)
t.forward(b)
t.end_fill()
t.penup()
t.left(90)
t.forward(c+a)
t.pendown()
command=turtle.getscreen().getcanvas().postscript(file='canva1.ps')
os.system(command)
turtle.done()
解决方案
推荐阅读
- python - 有没有办法回答 Facebook 群组的潜在新成员提出的问题?
- django - 如何在 Django 中使用 forms.py 显示数据库表
- c - 为什么 gcc/clang 处理代码略有不同?(给出的例子)
- c++ - CMAKE 不使用我的 macOS 的环境 PATH
- oracle11g - 带有 sdo_nn“缺少右括号”的 Oracle 空间更新语句
- excel - 如何使用 VBA 将文本复制到剪贴板?
- oracle - 如何从文本中提取匹配特定模式的子字符串?
- python - 如何在此处添加对嗅探 HTTPS 数据包的支持?
- reactjs - 是否可以根据用户代理(设备类型)在 vercel 上使用 nextjs 提供不同版本的静态页面?
- android - 无法解密安全内容条目:java.io.IOException:getSecretKey 失败:密码不是 ASCII