主脚本中的cxFreeze python错误

主脚本中的cxFreeze python错误,python,python-3.x,cx-freeze,Python,Python 3.x,Cx Freeze,为什么我会犯这个错误。 它说主脚本中有python错误, 在第64行的末尾;运行时错误 import sys #import os from cx_Freeze import setup,Executable base = None if sys.platform == "win32": base = "win32GUI" #os.environ['TCL_LIBRARY'] = r'C:\Users\asus\AppData\Local\Programs\Python\Pyth

为什么我会犯这个错误。

它说主脚本中有python错误, 在第64行的末尾;运行时错误

import sys
#import os
from cx_Freeze import setup,Executable

base = None

if sys.platform == "win32":
    base = "win32GUI"

#os.environ['TCL_LIBRARY'] = r'C:\Users\asus\AppData\Local\Programs\Python\Python36-32\tcl\tcl8.6'
#os.environ['TK_LIBRARY'] = r'C:\Users\asus\AppData\Local\Programs\Python\Python36-32\tcl\tk8.6'

setup(name="aplication",
      version="0.1",
      description="app",
      executables=[Executable("TICTACTOE.py", base=base)])
我仍然是一个学习者,无法找出这个错误

我的主脚本在shell中运行,没有错误

这里有一个脚本

import copy as c
import sys

def printBoard(arg):
    i = 0
    for v in arg.keys():
        i += 1
        if i % 3 == 0 and i < 9:
            print(arg[v],'\n- + - + -')
        elif i==9:
                print(arg[v])
        else:
            print(arg[v],'','|',end=' ')



def check(b,arg):
    def plagfn(b):
        global looper
        looper = False
        plag = input('Play again? y/n ')
        if plag == 'Y':
            theBoard=c.copy(newBoard)
        else:
            sys.exit()
    val = list(b.values())
    l=['','','','','','','','','']
    u=c.copy(l)
    d=c.copy(l)
    for i in [0,3,6]:
        l[i] = ( val[i] == val[i+1] == val[i+2] == arg )
    for i in range(3):
        u[i] = ( val[i] == val[i+3] == val[i+6] == arg )
    for i in [0,2]:
        d[i] = ( val[i] == val[4] == val[8-i] == arg )
    if ('' not in b.values()):
        print('Its draw !')
        plagfn(b)
    if (True in l) or (True in u) or (True in d):
        print(arg , 'is a winner !')
        plagfn(b)


while True:
    theBoard = {'TL': '', 'TM': '', 'TR': '',
                'ML': '', 'MM': '', 'MR': '',
                'LL': '', 'LM': '', 'LR': ''}
    sample={}
    for bld1 in theBoard.keys():
        sample[bld1]=bld1
    newBoard=c.copy(theBoard)                 
    print('The viable inputs are \n')
    printBoard(sample)
    print('\nStart')
    printBoard(theBoard)
    looper = True
    i=0
    while looper:
        i += 1
        if i % 2 == 0:
            arg = 'O'
        else:
            arg = 'X'
        v = input('\nYour turn ' + str(arg) + '! \n')
        while v not in list(theBoard.keys()):
            print('The viable inputs are \n')
            printBoard(sample)
            v = input('\nYour turn ' + str(arg) + '! \n')
        while theBoard[v] :
            print('Already played.')
            v = input('Your turn ' + str(arg) + '! \n')
        theBoard[v]=arg
        printBoard(theBoard)
        check(theBoard,arg)
将副本导入为c
导入系统
def打印板(arg):
i=0
对于arg.keys()中的v:
i+=1
如果i%3==0且i<9:
打印(arg[v],'\n-+-+-')
elif i==9:
打印(参数[v])
其他:
打印(参数[v],'','','',结束='')
def检查(b,arg):
定义fn(b):
全局活套
活套=假
plag=输入('再次播放?是/否')
如果plag='Y':
theBoard=c.副本(新板)
其他:
sys.exit()
val=列表(b.值())
l=['','','','','','','','','','']
u=c.副本(l)
d=c.副本(l)
对于[0,3,6]中的i:
l[i]=(val[i]==val[i+1]==val[i+2]==arg)
对于范围(3)中的i:
u[i]=(val[i]==val[i+3]==val[i+6]==arg)
对于[0,2]中的i:
d[i]=(val[i]==val[4]==val[8-i]==arg)
如果(“”不在b.values()中):
打印('它的绘图!')
fn(b)
如果(在l中为真)或(在u中为真)或(在d中为真):
打印(arg,“是赢家!”)
fn(b)
尽管如此:
董事会={'TL':'','TM':'','TR':'',
“ML”:“MM”:“MR”:”,
'LL':''LM':''LR':''
样本={}
对于板中的bld1。键():
样本[bld1]=bld1
新板=c.副本(电路板)
打印('可行的输入为\n')
印制板(样本)
打印(“\n开始”)
印刷板(theBoard)
活套=真
i=0
而活套:
i+=1
如果i%2==0:
arg='O'
其他:
arg='X'
v=输入('\n你的回合'+str(arg)+'!\n')
当v不在列表中时(theBoard.keys()):
打印('可行的输入为\n')
印制板(样本)
v=输入('\n你的回合'+str(arg)+'!\n')
而董事会[v]:
打印('已播放')
v=输入('你的回合'+str(arg)+'!\n')
电路板[v]=arg
印刷板(theBoard)
检查(主板,arg)
谢谢您的时间。

这应该会有帮助:

import sys

from cx_Freeze import setup, Executable

setup(name="aplication",
      version="0.1",
      description="app",
      executables=[Executable("TICTACTOE.py", base="Console")])