Python入门系列(一)——伊始

上一个入门系列是MSF系列,可谓是真正意义上的从零开始的,至少现在的metasploit已经足够日常所需了。
现在,新的一期入门系列要开始了!如果有想接触python但面对网络上各种教程迷茫的小伙伴们,我们可以一起出发啦!
在2019的伊始,从零开始学习python。
喏,我的flag:flag{ 20天、赶在春节前结束入门课程 } ,上车!

我们此次学习选择了python3,毕竟python2还可以坚持多久,谁也说不好。python3也并未考虑向下兼容的问题,涉及到的改变也是相当之多,有兴趣的小伙伴可以去下面的链接仔细对比。

http://www.runoob.com/python/python-2x-3x.html

概况一点说的话,python3的改动更多的是摒弃了一些规则,也替换了一些模块名称。例如下图最常见的print语句,在python3中已经摒弃,只保留了print()函数。所以为了一定程度上避免干扰,建议大家学习python先从一个版本开始。

print对比

关于IDE的问题,毕竟我们在shell命令中的输入是无法及时保存的,所以一个趁手的IDE也是有必要的。原则上你只要不使用window自带的记事本(会有中文编码问题),notepad++、Sublime Text之类的大家自行选择,比较适合新手手动不全代码(估计每一个写教程的人都会这么推荐吧,不论什么语言的学习)。当然,你如果犯懒或者有编程基础的话可以选择一个主流自动化IDE,如pycharm。

之前已经在parrot上预装了pycharm,我们开始所有语言通用的起步工作吧!

#!/usr/bin/env python3
#_*_ coding:utf-8 _*_
'''
 ____       _     _     _ _   __  __           _    
|  _ \ __ _| |__ | |__ (_) |_|  \/  | __ _ ___| | __
| |_) / _` | '_ \| '_ \| | __| |\/| |/ _` / __| |/ /
|  _ < (_| | |_) | |_) | | |_| |  | | (_| \__ \   < 
|_| \_\__,_|_.__/|_.__/|_|\__|_|  |_|\__,_|___/_|\_\
                                                    
'''
print('hello,world')

关于这个最起初的“hello,world”,我们来说点网上不常解释的东西。

一:#!/usr/bin/env python3 & #!/usr/bin/python3

大家都习惯性地模仿,在文件首行加一个特殊的注释,大家考虑过有什么用么?一定程度上,它方便区分是python2 or python3,但这只是凑巧,毕竟python3的环境也可以叫python。

其实该注释是为了方便在linux下不加python直接运行一个.py文件,即自动根据首行注释选择python解释器。换句话说,如果你是windows环境,这句话完全没有任何意义,但加上它就意味着更好的跨平台性。

而此处的两种写法大家在各种开源代码中都遇见过,他们的区别是前者是从环境变量中读取python3解释器的安装路径,而后者路径是写死的,直接从该目录读取python3解释器,至于为什么在这里,大家可以参考之前的《linux下的python共存》了解该目录下的软链接建立问题。

小结一下,后者目录写死,前者意味着更好的灵活性,所以我们在此选择逼格更高的,即前者#!/usr/bin/env python3

二:#_*_ coding:utf-8 _*_ & #coding:utf-8

首先在这里丢出官方文档:
https://www.python.org/dev/peps/pep-0263/

研究了一下,官方给出的结论是,效果相同。
但是如与vim齐名的Emacs编辑器不能很好的识别后者,所以代码兼容性上来讲,推荐前者,即#_*_ coding:utf-8 _*_

三:单引号 & 双引号

也许大家也已经了解过了,python下的单引号双引号几乎是等价的。但不可混用,但是你是否考虑过既然用法完全一致,同时存在的意义又是什么?
我们来看一下下面的例子:
我们尝试打印出I'm rabbit

如果只是使用单引号的话,会出现语法报错:

语法报错

这种情况我们有两种解决方案。

1,借助双引号

借助双引号

2,借助转义符\

借助转义符

当然,如果你要是抬杠想输出\的说,如此输入就好:\\


为什么要讲这些?作为一个强迫症,在flag的伊始绝不能怂!

虽然养成了良好的声明习惯,但是你或许觉得也会太麻烦,如果你使用的是pycharm等IDE的话,可以预设方案,当然要选择我们最推荐的方案。

pycharm

emmmmm,作为基础还有什么好补充的呢,对了,你要知道你所使用的解释器是什么,官方下载的解释器为CPython,顾名思义,该解释器使用C语言编写。关于其他解释器我们作为入门系列默认无视。

然后、没啦,接下来的日子,相互督促吧~
我对着这个天、对着这个地、发肆,
我对PY一无所知,求PY大佬轻喷。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 文字/ Sandy 摄影/ Sandy 这些日子一直在翻阅经典的书籍,包括阿兰.德波顿,伊丽莎白.吉尔伯特,李欣频...
    沙子sandy阅读 2,165评论 0 2
  • 清晨六点准备歩行去莫高窟,外面的天空竟是出乎意料的暗。而且有些凉,商量了一下,继续回房间睡回笼觉。 七...
    我是真幸福阅读 347评论 0 1
  • 不是上了多少学,是这个学没有白上 同学婚礼,晚上来了很多人,大多都是各个年龄段的同学?同桌吃饭的一个朋友就说:你看...
    牧_童阅读 60评论 0 0