设为首页 收藏本站
查看: 1157|回复: 0

[经验分享] python入门教程(一)

[复制链接]

尚未签到

发表于 2018-8-8 10:15:33 | 显示全部楼层 |阅读模式
  我们依然不讲代码,而是先说命令行。
  为什么命令行如此重要?之前说到,命令行是你和电脑对话的地方。你可以用句子的方式把信息发给电脑,电脑再以句子的方式给你回应。在编程领域,有些消息只能用命令行告诉电脑——或许是编程人员早就习惯了,或许打字更有效——毕竟你和闭着眼睛的人交流,肯定比捂着耳朵的人交流方便(你不能用鼠标写字!)。在编程中,大部分消息都是靠说,而不是靠比划(画图就是比划的例子)。呃……总之你得懂命令行。
  在Windows里有命令行,Linux也有,但是大同小异。要弄懂命令行怎么干活,只要想象电脑没有屏幕,但是会说话。比如——

  ——“桌面上有什么?”
  ——“有3个文件夹:回收站,资料,工具;5个文件:便签.txt,语言哲学.pdf,截图.png,antistops.py,安装程序.exe”
  ——“E盘里有什么?”
  ——“有1个文件夹:work”
  ——“work文件夹里有什么?”
  ——“您的电脑里有不止一个名为work的文件夹。”

  顿时尴尬,毕竟眼前就有个work文件夹,却进不去。所以设计命令行的人想出了“当前位置”这个概念。我们知道文件夹的组织可以看成“树”——(其实#不能用于文件名,我用的cs而不是c#)
DSC0000.jpg

  实际肯定比这复杂。当前位置的意思就是,你只能站在这棵树的一个文件夹节点上,即你不能同时位于多个文件夹。你只能看到周围的点。以上图为例,你想让电脑运行hello.exe,图上却有两个hello.exe。加上“当前位置”这个概念后,你只能打开当前文件夹中的文件。而同一个文件夹中,文件名不能重复,就保证了你能唯一地指定一个文件。想运行文件夹(很多人管文件夹叫目录,因为不拗口)C下的hello.exe,就要走到目录C 。
  但是人是会走丢的。设计者是这么处理的:
  1.x盘是固定的,不必多说。
  2.E盘下的目录C记作“E:\C”,再下层的hello.c记作E:\C\hello.c
  层层嵌套。所以如果你在运行栏(或者点开始菜单里的“运行”)输入cmd回车,我猜你明白C:\Users\Administrator>是什么意思了,表示你处在一个名叫Administrator的文件夹里。
DSC0001.jpg

DSC0002.jpg

  其实,没有“当前位置”,也是可以定位每一个文件的。上例中,不管你在哪里,输入E:\C\hello.exe,电脑都知道你要找的不是E:\C#\hello.exe 。但是每次树一长串,谁愿意呢?另外,命令行里显示的那个目录叫“当前工作目录”,简称工作目录,我相信你几次用命令行运行python就会明白为什么叫“工作”了。
  所以你可以对命令行说这些东西:


  • 进入某个子目录(即当前文件夹中的文件夹)—— cd xxx
  • 进入上一层目录(可以称为父目录) —— cd .. (就是两个点)
  • 进入E:\C —— cd E:\C
  • 进入自身(“并非毫无用处”) —— cd . (一个点)
  cd 是change directory 的首字母
  (你可能发现某些命令并不起作用,因为上图的home是假的。上面的命令只有当在同一个盘中才有用,不能用cd 换盘。想切换盘符,直接输入“盘符名:”回车,比如e: 回车 )
  上一篇文章还说到,“python xxx.py”是一条命令。其实命令分为两部分,第一个词是一部分,剩下的是第二部分。python是python.exe,在命令行.exe可省略(不省也可以用,但习惯上省略)。python xxx.py就是启动python.exe,并且告诉程序一个额外信息: xxx.py。这可能令人困惑,运行程序是允许加点别的东西的(加一个算少的了)。cd xxxxx,就是运行cd.exe 附加【参数】xxxxx——虽然未必有cd.exe,但完全可以当做有。所有的命令,几乎都只有第一个词真的做了事。(exe文件也是文件)
  最后还要说绝对路径和相对路径,用处在于,你如何称呼一个可能重名的文件?仍然用刚才的例子,你位于目录C,想运行隔壁目录C#的hello.exe 。目前有三种办法:
  

1.  cd .. 再 cd C# 再 hello (.exe可以省略)  
2.  E:\C#\hello
  
3.  ..\C#\hello.exe
  

  2和3都做到了不切换工作目录而处理了别的目录的exe文件。2叫做绝对定位,因为从盘开始;3叫相对定位,因为从自身开始。电脑只认盘符,要是没有,就假设是从工作目录开始。虽然这样看,好像上层目录被当成名为..的子文件夹了,但是无妨——这其实挺奇妙。(你仔细看看树图,会发现节点都可以看成根节点,有点参考系的味道)
  两种定位都是可以的。其实还有一种定位——你有没有想过,python.exe在哪?!还记得安装第一步点的PATH么,名为“环境变量”之物,环境变量里写着的若干目录可以无条件引用(当前目录也是无条件引用的)。电脑收到你的命令python,首先在工作目录里找python.exe,找不到就到环境变量里的目录里找,再找不到就报错。
  然后你就能读懂这些了:(除了.和..用法特别,还有\ 表示当前盘起始,可以用cd \ 、cd \C 等等 )
  

* cd xxx (两种定位皆可)  
* cd \ ——回到本盘起始位置
  
* dir —— 查看当前目录信息(directory 缩写)
  
* dir xxx —— 查看xxx目录(两种定位皆可)
  
* md xxx —— 建立新文件夹(两种定位皆可) (make dir缩写)
  
* rd xxx ——删除【空】文件夹(两种定位皆可)(remove dir 缩写)【请注意!命令行删除不进回收站,是永久删除!】
  
* cls ——清屏(clean screen 缩写)
  
* copy xxx xxx —— 复制文件内容(不包括名称),后面的名字为新的名字(当然,两种定位皆可)
  
* del xxx —— 删除文件,不包括文件夹(可用 del * 删除所有文件,del * .txt 删除所有.txt文件,等等)(delete缩写)
  
* deltree xxx —— <危险操作>删除文件夹以及一切内容
  
* ren xxx xxx —— 重命名(rename 缩写)
  

  命令可以有参数,即在输完上述命令后,还可以后跟一些东西。之前说到python.exe 可以后跟文件名,但参数只是字符串,不一定是文件名。你输入的命令如果有多个词,那么所有的词都会告诉第一个词,因为那是唯一被运行的东西,他会收到所有参数。比如dir命令可以有超过2个参数(除了本身dir 和常规的xxx),比如后跟\a或\s等等,请自行百度“dos命令”

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-548532-1-1.html 上篇帖子: python PIL.Image使用 下篇帖子: python基础:集合-set()
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表