零基础自学python的建议-关于零基础学习 Python 有什么好的建议?

Python这种高级编程语言,相比前编程明星C++和Java等更简单易操作。,目前Python已成为最受AI从业者欢迎的语言。

Python的10个基础知识点

Python是一个面向对象的解释型的交互式高级脚本语言:Python被设计成一种高可读性的语言,因为它大量地使用了英语中的单词作为关键字,而且不像其他语言使用标点符号构成复杂的语法结构,Python的语法结构非常少。

Python是一种面向对象的语言:即Python是支持面向对象的,支持在对象中进行代码封装。

Python是一种解释型语言:即Python程序是在运行时由解释器解释执行的,因而不用事先编译源程序。这一点和Perl和PHP类似。

Python是一种交互式语言:即你能够在Python提示符下直接交互式地编写你的程序。

Python是初学者的语言:Python是一种非常适合初学者的语言,它支持多种类型的应用程序的开发,如简单的文本处理、www浏览器应用程序开发、游戏开发等等。

1)什么是Python?使用Python的优点有哪些?缺点有哪些?

Python是一种面向对象的解释性的交互式语言,带有对象、模块、线程、异常和内存自动管理的机制。

使用Python的优点有:简单、易学、轻便可移植、可扩展、可读性、具有多种内建数据类型、开源等等。

使用Python的缺点有:运行速度慢,代码不能加密(解释性语言,发布python应用只能发布源代码,不像C发布编译后的应用文件)

2)什么是PEP 8?

PEP 8是一种编码规范,是一系列关于如何让Python代码更加具有可读性的编码建议。

3)什么是序列化(pickling)和反序列化(unpickling)?

序列化:将在内存中的变量转为可存储或传输的过程。应用JSON传输,序列化为统一格式json

反序列化:与序列化的过程相反

Pickle模块允许我们将Python对象转换成一个string表示的信息,并且可以使用dump函数将其保存到一个文件中去,这样的过程称为序列化。而使用文件中保存的对象信息重构Python对象的过程称为反序列化。

4)Python是如何被解释执行的?

Python是一种解释型语言,它可以直接从源代码运行程序。程序员编写的源代码首先转变成一种中间语言代码,然后再被转换成能够直接执行的机器语言代码。

5)Python是如何进行内存管理的?

Python内存空间是以Python私有堆的形式进行管理的。所有的Python对象和数据结构都存放在一个私有堆中。解释器可以访问私有堆,而程序员不可以。

将Python堆空间中的内存分配给Python对象的工作是由Python内存管理器完成的。而内核API则会提供给程序员一些相关的工具来完成涉及到内存的编码工作。

Python还内置垃圾回收器,从而进行回收释放内存到堆空间。

6)能够找到程序中的bug进行静态分析的工具有哪些?

PyChecker是一种能够发现Python源代码中的bug并对其中的代码风格和复杂度进行警告的静态分析工具。另外一种工具是Pylint,它能够验证模块是否满足编码标准。

7)什么是Python装饰器?

用来装饰一个函数从而使这个函数在不修改本身的函数定义外,动态产生额外的功能;装饰函数的入参为需要被装饰的函数。装饰器本质上是一个返回函数的高阶函数

一个Python装饰器是我们在符合Python语法的同时又方便地对函数做的一些特定的修改。

8)列表、元组、集合、字典的区别是什么?

列表:元素可变(任何数据类型),有序(可索引),append/insert/pop;

元组:元素不可变,但元素中的可变元素是可变的;有序(可索引);而且元组可以被散列,例如作为字典的键。

集合:无序(不可被索引)、互异

字典:无序,键值对(key:value),key唯一不可重复

9)怎样理解字典和列表?

它们是一种用来创建可变对象的语法结构,数据容器。

dic插入、查找速度比list快,不会随key的增加而增加,但list会随着元素的增加而增加(偏移量)

10)参数是如何通过值或者引用传递的?

python中确切说应该是“传对象引用”的方式,引用对象传递。一切皆对象,参数皆引用

如果函数收到的是一个可变对象(比如列表、字典)的引用,则可修改对象的原始值==相当于“引用传递”方式;

如果函数收到的是一个不可变对象(比如数字、字符、元组),就不能直接修改原始对象指向的值==相当于“值传递”方式。

看视频学习选一套完整视频认真仔细的浏览一遍,目的是对 python 有整体的认知。而且要坚持。你只能快跑, 进一步学习。

加入一个自学团,找到一个学习伙伴啊,每天处理一些两人出现的问题,或是自学团里大家出现的问题,大神们的经验分享。或是在学习枯燥乏味的时候聊天打屁。相互监督,相互进步,互学互利,长补短这样会加快你的学习脚步。

我大学的室友,毕业三年在北京从事广告设计工作,税前月薪6k,工资不高,工作时候的事情也十分复杂,每次加班都是在想设计灵感。导致下班在业余时间都是在想着上班时候的事情。后来决定转行,加入自学团从而零基础学习了python,学习了4个多月,在北京找到了月薪14k的工作,也是同样的加班,但是他感觉比以前轻松多了。

因为入门编程并不是一件分分钟就能做到的事情,多以你要坚持每天打卡。不要三分钟热血。要循序渐进,温故而知新。

无论怎么样的学习不结合实战都是不好的训练方式和检验手段,一定要结合实战,多进行上机操作,不要光看不用,这样会使你的学习效果变弱。

欢迎正在学习的小伙伴们,来加入我们pythonWeb自学团,python前端基础自学团,python数据库自学团,python基础自学团。这里有大神分享经验,有小伙伴们互帮互助,监督打卡,有项目实战,想加入的伙伴们,留言私信即可。 />

你可能感兴趣的:(零基础自学python的建议-关于零基础学习 Python 有什么好的建议?)