python与命令行

浏览: 1375

image.png

在使用R语言时,我们要使用的工具仅仅是用于编写代码的脚本文件(.R文件),和运行代码的控制台。但是使用python时,却要增加一些其他工具,比如我们经常要和命令行打交道,有时要使用文本编辑器来编写更大型的代码更方便。
对于非软件专业的人来说,命令行是一个非常陌生的工具。平常我们使用电脑都只是鼠标操作,要写什么内容的时候才会使用键盘,几乎不会有人会用键盘来打开程序、下载应用等。那是因为电脑操作系统已经把命令封装好了,我们不需要懂得他们操作系统运行的原理即可方便使用。即使是学过一些操作软件,甚至是像R一样的编程软件的人也多没有接触过命令行。
但是要用python就必须对命令行有所接触,别的不说,安装库就不像R安装包那样在控制台中输入命令,python的安装命令要在命令行完成。如果只是想专注于数据分析等函数操作,可能按照一个套路会装个库什么的就可以了,也不用了解很多命令行的知识。不过python既然与命令行结合相对紧密一些,如果不了解的透彻一点,可能会有一些bug不明所以。
除此之外,既然我们学了python,就可以不必局限于它的一个领域,我们可以用它提供的功能实现很多有趣的事情,为我们的生活添加便捷性与趣味性。比如用python我们可以写.exe可执行程序等,这些可能会涉及到一些操作系统的原理,所以命令行好掌握多一点。
好了,我们开始进入正题

本文包括如下内容

  • 环境变量与可执行程序——初步了解命令行
  • windows下常用命令行
  • 与python有关的命令行

环境变量与可执行程序

相信很多新学python的人都遇到过这样的疑惑

  • 一个博客写:安装pyinstaller库直接一条命令就完成了 pip install pyinstaller。然后我们打开python输入却无效,殊不知它应该是在命令行中输入的
  • 有时候让你在某一个文件夹下打开命令行输入某条命令,有时候又让你打开命令行,你也不知道他的意思是直接打开还是默认你已经知道了要在这个文件夹下打开
  • 有时候安装完一个软件让你配置环境变量,但是完全不知道配置这个是在干什么
  • 有的博客写python代码竟然也是在命令行中完成的,但是你直接输入python代码却一直报错
  • 有的人安装库是用 pip install 有的人则是用 pip3 install,这真是让人头痛

看完这篇文章,上面问题都能得到解答

命令行又称cmd、命令提示符。这个系列只讲解windows下的命令行命令及其与python的结合。
打开:windows10系统下,右键开始-运行(win7应该是左键开始-运行),输入cmd确定,打开了一个黑色的框,我们可以在这个框中输入命令,这就是命令行工具了。
另外还可以用文件搜索工具(比如everything)搜索电脑中的一个cmd.exe文件,双击这个文件也可以打开
基本配置:作为一个写代码的地方,像复制粘体这样的功能是一定要有的,但是这个命令行偏偏不正常,所以我们需要进行一些基础的配置。
右键左上角的图标-属性,我们可以根据自己的偏好进行调整

  • 在“字体”、“颜色”等选项卡中选择一个自己比较喜欢的字体、大小及背景颜色
  • 在“选项”选项卡中,把快速编辑模式和启用ctrl快捷键都打上勾,这样复制粘贴既可以用ctrl+c ctrl+v,也可以都直接点击右键完成。
    这样就可以正常使用了

在文件夹中打开:在打开的cmd中,我们看到在闪的光标左边有一个文件路径,比如是C:\Users\myfile,说明这个命令行是默认在myfile文件夹中打开的。
比如myfile文件夹中有一个file1文件夹,我们可以在命令行中输入

cd file1

会发现文件路径变成了C:\Users\myfile\file1 说明我们变更了命令行所在的位置
此时再在命令行中输入

cd .. 

路径又会变成C:\Users\myfile,这是一条回退到父文件夹的命令
如果我们想要在指定文件夹中直接打开,而不是用cd命令一点一点调,则可以:打开file1文件夹,按住shift右键-在此处打开命令窗口,此时打开的命令行显示的路径就是C:\Users\myfile\file1
环境变量:右键此电脑-属性-高级系统设置-点击“高级”选项卡中的环境变量,我们能看到分为用户变量和系统变量,二者之中都能找到PATH,双击系统变量中的path,可以看到里面包含着一些文件路径,我们可以双击修改,也可以新建添加。一般安装一个软件让你把环境变量配置好就是在这里新建。
添加环境变量有什么用呢?
在这里看我电脑系统变量中的随便一个路径比如C:\Program Files\Anaconda3,我们打开这个文件夹,看里面有一个python.exe文件。
在命令行中(任意文件夹下)输入

python

回车,会出现>>>这个命令提示符,说明我们进入了Python的环境,我们可以在这里编写python代码,如果我们要退回命令行,则输入

exit()

其实输入python就是调用了C:\Program Files\Anaconda3中的python.exe,相当于双击这个文件打开了python。
所以总结起来如下:

  • 一个文件夹中有aa.exe文件,在这个文件夹中打开cmd,输入aa,就相当于双击了aa.exe文件
  • 而如果想在任意文件夹中直接输入aa来打开此文件,就要将这个文件所在文件夹路径添加到环境变量中
  • 环境变量的作用就是让命令行可以搜索要执行的程序的,如果没有配置环境变量这个机制,每次调用命令行都要输入全部路径,或者要从整个电脑中搜索这个exe文件
  • 同时,这也是一个防止错误命令的机制。比如你不小心输入了一个错误命令,却不巧对应了一个exe文件,于是打开了,这可能带来一些危险性。如今限制只能在环境变量的文件夹和cmd所在文件夹下搜索命令,就严谨很多

pip与pip3:在博客教程中,有的人用pip安装库,有的人用pip3;有的人在命令行中使用python是输入python,有的人则是python3。其实原理就是执行pip.exe可执行文件,或者是pip3.exe,看你安装之后,配置的环境变量路径中有的是pip.exe还是pip3.exe,是哪个就用哪个,如果两个都有当然都可以用。

多版本共存:有的人电脑中既有python2又有python3,并且都要用,所以命令就要进行区分,所以一般都是让pip表示python2环境,pip3表示python3环境。安装比如python3.5,pip的文件夹中自动就有了pip.exe pip3.exe pip3.5.exe,所以这几条命令都可以用。而python命令则py2 py3文件夹中都是python.exe,可以复制python3下的python.exe文件,改成python3.exe,这样就可以调用python3命令了
当安装的版本比较多的时候,可以用

where pip

where python3

这样的命令查看pip.exe和python3.exe所在路径,可能有好几个路径,那么调用pip命令时,默认调用的就是第一个路径下的pip.exe

常用cmd命令

  • dir 查看当前文件夹下的文件及文件夹,其中.表示当前文件夹,..表示上一级文件夹,有标志的表示文件夹
  • cd file 进入当前文件夹下的file文件夹
  • cd folder1/folder2 或者 cd folder1\folder2 进入当前文件夹下的folder1文件夹下的folder2文件夹,即一次进入多层文件夹
  • cd 完整路径 进入这个路径
  • cd ..进入上一层文件夹
  • cd ../folder 进入上一层文件夹中的folder文件夹
  • mkdir myfolder 或 md myfolder 在当前目录下创建myfolder文件夹
  • type nul> my.txt 创建空白的my.txt文件
  • echo content>my.txt 创建内容是 content 的my.txt文件
  • type cmd.py 查看在当前目录下的cmd.py文件内容,把内容打印到cmd中
  • cmd.py 这样直接输入文件名,则用默认程序打开此文件(直接输入相当于鼠标双击)
  • ren oldname newname 文件改名
  • del aa.txt 在当前目录下删除 aa.txt 文件
  • del myfolder 删除myfolder文件夹中的所有文件(文件夹保留)
  • rd myfolder 或 rmdir myfolder 删除myfolder文件夹
  • tree myfolder 将myfolder文件夹下的所有文件夹展示成树状结构(不展示文件)
  • tree myfolder /f则展示文件夹及文件树状结构
  • tree myfolder /f >my.txt将输出结果输出到my.txt文件中(新建的文件)
  • notepad 打开记事本(mspaint、calc、sysdm.cpl、write也是可以像这样直接快速打开的)
  • aa 打开搜索路径下的aa.exe
  • aa my.txt 用aa.exe程序打开my.txt文件
  • where aa 查看搜索路径中哪些路径有aa.exe
  • cls清屏
  • tree /?或者md /? 即用 /?参数来获取命令的帮助文档
  • help 会列出大多数cmd命令,有兴趣的读者可以结合列出来的命令,和/?查看帮助来学习

cmd快捷键

  • 方向键“上”键 输入上一行代码
  • 方向键“右”键 逐个字符输入上一行代码
  • F7 列出这个窗口的历史命令以供选择
  • ctrl + c 终止命令运行
  • tab 选择当前目录的子文件夹,如果输入了一部分则补全

附上几个不错的博客
https://zhuanlan.zhihu.com/p/25194940

https://www.cnblogs.com/bici/p/6037832.html

http://blog.csdn.net/stpeace/article/details/9021641

http://blog.csdn.net/fanesemyk/article/details/51901483

与python有关的命令行

1.安装库
一般使用pip install modulename来安装,如果pip.exe所在文件夹已经包含在环境变量中,则可以在任意一个文件夹下,打开一个cmd窗口,直接输入运行
卸载库用pip uninstall modulename

pip -h查看pip命令使用帮助
注意:很多时候安装报错出现一个”permission”,说明是权限问题,只要右键cmd,用管理员身份打开,然后重新运行pip install packagename即可

还有两种比较常用的安装方法
(1)首先安装wheel,直接pip install wheel,之后库用wheel安装
这个网站里找到对应库的.whl文件下载到电脑中
然后cd到.whl文件所在文件夹中,用pip install file.whl安装,或者在任意文件夹中指定.whl文件路径pip install path/file.whl,这样即可完成安装
(2)下载库压缩文件zip或tar.gz,解压成myfile文件之后,到myfile文件路径下打开cmd,输入python setup.py install(要myfile文件夹中有setup.py文件)

其他方法见这个网站

2.在cmd中运行脚本程序
在myfile文件夹下打开cmd,输入python my.py,则运行了my.py文件,并把得到的结果返回到cmd中
运行结果打印过程中有时候会遇到编码问题,所以最好在进入cmd时,就输入CHCP 65001,让cmd窗口完全支持utf-8,否则一旦有字符无法打印出来,就会报错,如果意识不到是这里的问题,可能会查很久的错误

3.在cmd中使用python
直接输入python,就进入了python交互界面,如果要退出,返回命令行模式,输入exit()
如果环境变量配置好了的话,输入R,也可以进入R语言交互界面

4.有一些框架运行可能是在命令行中执行的,比如scrapy爬虫框架。那时只要根据教程中所给的命令输入即可

专栏信息

专栏主页:Data Analysis

推荐 0
本文由 dwzb 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册