我有一些我希望从cmd提示符运行的python代码,但是它没有用,我的伙伴告诉我,如果我的代码中有这个声明:
if __name__ == '__main__':
xs, a0, a1, y0, y1, ys = encode(sys.argv[1])
np.set_printoptions(precision=6, suppress=True)
然后它应该能够运行。我将发布我的整个代码和命令提示错误,看看你们是否可以提供帮助
import random
import numpy as np
import sys
import pprint
from numpy import linalg as LA
#Takes in a n value
def encode(n):
xA0 = np.zeros((n+3,1))
xA1 = np.zeros((n+3,1))
xStream = np.zeros((n+3,1))
#Creates a random x
for i in range(0, n):
xStream[i,0] = random.randint(0,1)
#Creates A0 and A1 based on size
xA0[0,0] = 1
xA0[2,0] = 1
xA0[3,0] = 1
xA1[0,0] = 1
xA1[1,0] = 1
xA1[3,0] = 1
A0 = np.zeros((n+3,n+3))
A1 = np.zeros((n+3,n+3))
y0 = np.zeros((n+3,1))
y1 = np.zeros((n+3,1))
yStream = []
#Creates A0 and A1 using method defined in description
for i in range(0,n+3):
for k in range (0,i+1):
A0[i,k] = xA0[i-k,0]
A1[i,k] = xA1[i-k,0]
#A0*x and A1*x to get y0 and y1
for i in range(0,n+3):
y0[i,0] = np.dot(A0[i,:], xStream)
y1[i,0] = np.dot(A1[i,:], xStream)
#answers mod 2 to get real answers
for i in range(0,n+3):
y0[i,0] = y0[i,0]%2
y1[i,0] = y1[i,0]%2
#combined for yStream
for i in range(0,n+3):
yStream.append([y0[i,0],y1[i,0]])
print("x:")
print(xStream)
print("\n")
print("A0:")
print(A0)
print("\n")
print("A1:")
print(A1)
print("\n")
print("y0:")
print(y0)
print("\n")
print("y1:")
print(y1)
print("\n")
print("yStream:")
print(yStream)
return xStream, A0, A1, y0, y1, yStream
# This is only or when encode is used as a stand-alone module
# Read command line argument. Must be exactly one argument.
# It outputs on the console
if __name__ == '__main__':
xs, a0, a1, y0, y1, ys = encode(sys.argv[1])
np.set_printoptions(precision=6, suppress=True)
print("x:")
print(xs)
print("\n")
print("A0:")
print(a0)
print("\n")
print("A1:")
print(a1)
print("\n")
print("y0:")
print(y0)
print("\n")
print("y1:")
print(y1)
print("\n")
print("yStream:")
print(ys)
答案 0 :(得分:2)
由于您已安装到D:\ Python中,将以下内容复制到编辑器中并将其保存为bat文件(例如runpython.bat
)然后运行它(感谢@eryksun编辑)假设Python 2:< / p>
@SET PATH=%PATH%;D:\Python;D:\Python\Scripts
@ASSOC .py=Python.File
@ASSOC .pyc=Python.CompiledFile
@ASSOC .pyo=Python.CompiledFile
@ASSOC .pyw=Python.NoConFile
@FTYPE Python.CompiledFile="D:\Python\python.exe" "%%1" %%*
@FTYPE Python.File="D:\Python\python.exe" "%%1" %%*
@FTYPE Python.NoConFile="D:\Python\pythonw.exe" "%%1" %%*
@SET PATHEXT=%PATHEXT%;.py
您现在应该能够从命令行运行python程序
答案 1 :(得分:1)
转到
My Computer > Properties > Advanced System Settings > Environment Variables >
在Variable value
中添加Python的路径。