【python宝典】第二章,python 基础

一、基础语法:

1、代码中修改不可变数据会抛什么异常   : 会抛 TypeError 异常

2、 a = 1, b = 2 不用中间变量交换 a 和 b 的值

a = a+b

b = a -b

a = a -b

3、简述对input()函数的理解: 在python3 中 input() 是获取用户的输入,无论用户输入的是什么类型,获取到的都是字符串类型 ,但是在python2 中input()  输入的是什么数据类型,获取到的就是什么数据类型

 

4、range 和xrange 的区别?

两者用法相同,不同的是range 返回的结果是一个列表,而 xrange 返回的是一个生成器,前者是直接开辟一块内存空间来保存列表,后者是边循环边使用,只有使用时才会开辟内存空间

所以当列表很长时,用xrange 性能会更好,但是 python 3 已经废弃了xrange 函数了 ,用range替代

 

5、read : 读取整个文件   readline :读取下一行,使用生成器方法    readlines: 读取整个文件到一个迭代器供我们遍历

 

6、异常 : 用 raise 方法可以抛出自定义异常

 

7、常用的python库有哪些?

os :操作系统    time :时间   random : 随机   pymysql : 连接数据库   threading : 线程    queue: 队列

 

8、常用的第三方库有哪些?

django   flask   requests    selenium    xadmin    celery    md5     pip install  安装的都属于第三方库

 

9、赋值,深拷贝,浅拷贝的区别?

在python中,对象的赋值就是简单的引用 ,赋值操作不会开辟新的内存空间,它只是复制了对象的引用,也就是说除了b 这个名字之外,没有其他的内存开销,修改了a 也就是修改了b

同理 修改了 b 也就影响了 a

 

浅拷贝 copy():会创建新对象,其内容非原对象本身的引用,而是原对象内第一层对象的引用

深拷贝 deepcopy():深拷贝 拷贝的对象的所有元素,包括多层嵌套的元素,因此,它的时间和空间开销要高

 

10、init 和new 的区别

init  是在对象创建后,对对象进行初始化

new 是在对象创建之前创建一个对象,并将该对象的返回给 init 

 

11、说明一下 os.path 和 sys.path 分别代表什么?

os.path: 主要是用于对系统路径文件的操作

sys.path :主要是对python解释器的系统环境参数操作(动态的改变python解释器搜索路径)

 

12、python中的os 模块常见方法?

    https://www.runoob.com/python/os-file-methods.html

 

13、

 

猜你喜欢

转载自www.cnblogs.com/yuanyuan2017/p/11511149.html