从Windows命令行启动Python脚本:脚本启动,然后失败
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了从Windows命令行启动Python脚本:脚本启动,然后失败,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3588字,纯文字阅读大概需要6分钟。
内容图文
我是新手,请耐心等待.
我从另一位工程师那里继承了一个python脚本.为方便起见,我希望能够从Windows bat文件启动脚本,但最初我尝试通过从Windows命令行运行来进行调试.
每当我从CMD启动脚本时,它似乎开始正常,然后立即失败并出现错误.
我的环境:
Windows7 Pro和Windows10 Pro(出现相同的错误),
Anaconda 3.7,Spyder 3.3.2
当我从Spyder内部运行脚本时,脚本运行正常,没有错误.
当我尝试从Windows CMD运行时:
C:\Windows\system32> "%programdata%\Anaconda3\python.exe" "B:\IcCharData\B1505_Process_Data_20190214.py"
我收到这些错误:
Traceback (most recent call last):
File "B:\IcCharData\B1505_Process_Data_20190214.py", line 21, in <module>
import pandas as pd # Dataframe library
File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\__init__.py", line 19, in <module>
"Missing required dependencies {0}".format(missing_dependencies))
ImportError: Missing required dependencies ['numpy']
下面是脚本的第一部分,实际的行#s,其中错误似乎是源自的.
互联网搜索毫无结果.
可能是什么问题?
再次注意,Spyder内部的脚本运行良好
[snipped some irrelevant comments]
20 # Load the necessary libraries
21 import pandas as pd # Dataframe library
22 import numpy as np # Numeric library
23 import glob # Files related
24 import os # Operating System related
25 import sys #Operating System related
26 import re # regular expression related
27 import sqlite3 # database
28 import datetime
29 import subprocess # for running external programs like JMP from python
30 import logging # enables logging to both screen and a file
31 import statsmodels.api as sm # Modeling library used for linear regression
33 # Logging settings
34 logfilename = "./3_OutputData/B1505_Data_Process_Log_" + datetime.datetime.now().strftime("%Y-%m-%d-%H-%M") + '.txt'
35 level = logging.INFO
36 format = ' %(message)s'
37 handlers = [logging.FileHandler(logfilename), logging.StreamHandler()]
38 logging.basicConfig(level = level, format = format, handlers = handlers)
[snipped remaining 300+ lines of code]
增加于2019-02-24,以回应AJNeufeld的评论:
跑进Spyder:
import sys
print(sys.path)
runfile('B:/Desktop/untitled0.py', wdir='B:/Desktop') # TH: apparently because spyder prompted me to save the script here#
[
'C:\\Users\\th', # TH: line not present with Anaconda Prompt#
'C:\\ProgramData\\Anaconda3\\python37.zip',
'C:\\ProgramData\\Anaconda3\\DLLs',
'C:\\ProgramData\\Anaconda3\\lib',
'C:\\ProgramData\\Anaconda3',
'',
'C:\\ProgramData\\Anaconda3\\lib\\site-packages',
'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32',
'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32\\lib',
'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\Pythonwin',
'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\IPython\\extensions', # TH: line not present with Anaconda Prompt#
'C:\\Users\\th\\.ipython' # TH: line not present with Anaconda Prompt#
]
跑进Anaconda提示:
(base) C:\Users\th>python
Python 3.7.1 (default, Dec 10 2018, 22:54:23) [MSC v.1915 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print(sys.path)
[
'',
'C:\\ProgramData\\Anaconda3\\python37.zip',
'C:\\ProgramData\\Anaconda3\\DLLs',
'C:\\ProgramData\\Anaconda3\\lib',
'C:\\ProgramData\\Anaconda3',
'C:\\ProgramData\\Anaconda3\\lib\\site-packages',
'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32',
'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32\\lib',
'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\Pythonwin'
]
解决方法:
我很确定(根据导入错误中给出的信息),你要做的唯一事情就是在导入pandas之前导入Numpy.您可以通过切换第22和21行来完成此操作.
内容总结
以上是互联网集市为您收集整理的从Windows命令行启动Python脚本:脚本启动,然后失败全部内容,希望文章能够帮你解决从Windows命令行启动Python脚本:脚本启动,然后失败所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。