Python学习_Day_01
2020年11月13日 星期五 长春晴
###########################################################################
入住****的第一天,新生QFIUNE前来报到啦,此处应该有掌声,欢迎,欢迎,热烈欢迎......
###########################################################################
写在前面,“Python学习”是我在B站学习后记录的一系列笔记,有错误的地方,还请大家指出,将不胜感激。
还有还有就是,我想做一件持久的事,那就将学习这件事坚持贯彻落实到底吧。
好啦,开始今天的学习python之旅——
首先呢,感谢B站这个平台让我们这些穷学生白嫖到学习视频。
然后就是感谢黑马程序员带我入python的门,附上传送门:https://www.bilibili.com/video/BV1ex411x7Em/?spm_id_from=333.788.videocard.5
虽然自己的编程能力也没有很好,但是基本的东西也还能实现,比如在做蛋白contact预测课题中,能用python去解析pdb文件,也能用简单的爬虫去获得xml文件等等;
最近在做项目的时候,突然发现自己写的代码很low,不是if...else...就是大量的for循环,因此觉得自己之前学的python基础不太够用了,所以就开始了新的python高级编程学习。在B站上找到了这个视频https://www.bilibili.com/video/BV1R7411F7JV?p=11,大家一起学习,干掉700集,一定会有所收获的,正如熟读唐诗三百首,不会写诗也会吟。
今日学习内容:1-10集视频
①python简介:(http://c.biancheng.net/view/7747.html)这篇博客写的十分详细了
②安装python3.X(解释器+lib+pip.exe),其中lib文件夹是内置python包存放的目录,pip.exe加入系统环境变量(相当于做了一个软链接)以后就可以用来从不同地方pip所需要的包,相当于是外援。注:与lib同一级的site-package文件夹装的就是pip install的包。以下是一些常用的pip命令:
pip list | 列出所有安装包和版本信息 |
pip install XXX | 安装某个包 |
pip uninstall XXX | 卸载某个包 |
pip freeze > requirements.txt | python项目中必须包含一个 requirements.txt 文件,用于记录所有依赖包及其精确的版本号,以便新环境部署 |
pip install -r requirements.txt | 在新环境上安装 requirements.txt 文件里的包 |
③学习区分编译型和解释型语言
python是一种高级语言,能贴近生活。高级语言按程序的执行方式可以分为编译型和解释型两种:
编译型语言是指使用专门的编译器,针对特定平台(操作系统)将某种高级语言源代码一次性“翻译”成可被该平台硬件执行的机器码(包括机器指令和操作数) , 并包装成该平台所能识别的可执行程序的格式,这个转换过程称为编译( Compile )。
编译生成的可执行程序可以脱离开发环境,在特定的平台上独立运行。
有些程序编译结束后,还可能需要对其他编译好的目标代码进行链接,即组装两个以上的目标代码模块生成最终的可执行程序,通过这种方式实现低层次的代码复用。
因为编译型语言是一次性编译成机器码的,所以可以脱离开发环境独立运行,而且通常运行 效率较高。但因为编译型语言的程序被编译成特定平台上的机器码,因此编译生成的可执行程序通常无法移植到其他平台上运行,如果需要移植,则必须将源代码复制到特定平台上针对特定平台进行修改,至少需要采用特定平台上的编译器重新译。 现有的C、C++、Objective-C、Pascal 等高级语言都属于编译型语言。
解释型语言是指使用专门的解释器对源程序逐行解释成特定平台的机器码并立即执行的语言。解释型语言通常不会进行整体性的编译和链接处理,解释型语言相当于把编译型语言中的编译和解释过程混合到一起同时完成。
可以这样认为,每次执行解释型语言的程序都需要进行一次编译 , 因此解释型语言的程序运行效率通常较低,而且不能脱离解释器独立运行。但解释型语言有一个优势 , 就是跨平台比较容易,只需提供特定平台的解释器即可,每个特定平台上的解释器都负责将源程序解释成特定平台的机器指令。解释型语言可以方便地实现源程序级的移植,但这是以牺牲程序执行效率为代价执行的。
④学习区分面向对象和面向过程,这个是我们每个学编程语言的人一开始必须掌握和区分的。
面向过程:是一种以过程为中心的编程思想。都是以什么正在发生为主要目标进行编程。
面向对象:是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。
面向过程:不支持丰富的“面向对象”特性(比如继承、多态),并且不允许混合持久化状态和域逻辑。
面向对象:在内部被表示为一个指向一组属性的指针。任何对这个对象的操作都会经过这个指针操作对象的属性和方法。
⑤python命名规范:说到命名最为头疼,想一个变量名得想半个小时是程序员常有的事,其实不管是驼峰式命名还是下划线命名,我们只要遵循一个原则就是:见名知意。
具体详见该博客https://www.cnblogs.com/deliberate-cha/p/12077383.html
⑥变量:变量可以看成是一个容器,里面可以存放东西,也体现了python弱类型的特点,因为声明的变量被赋予什么值,该变量就是什么类型,而不像java那样只要变量被声明了就只能放同一类型的数据。
变量可以存放的类型有:字符串、整型、浮点型、布尔型、列表、字典、set。
今天的python学习笔记到此结束,明日再来呀。