1.python中is和==的区别
  1. Python中对象包含的三个基本要素,分别是:id(身份标识) 、type(数据类型)和value(值)。

  2. ‘==’比较的是value值

  3. ‘is’比较的是id

2.简述read、readline、readlines的区别
  1. read读取整个文件

  2. readline读取下一行数据

  3. readlines读取整个文件到一个迭代器以供我们遍历(读取 到一个list中,以供使用,比较方便)

3.举例说明创建字典的至少两种方法
  1. # way1
  2. dict1 = {key1:v1,key2:v2}
  3. # way2
  4. dict2 = {}
  5. dict2[key1] = v1
  6. dict2[key2] = v2
  7. # way3
  8. dict3 = dict(key1=v1,key2=v2)
4.*args,**kwargs的作用是什么?如何使用?

*args和**kwargs通常使用在函数定义里. *args 用来将参数打包成tuple给函数体调用。

**kwargs 打包关键字参数成dict给函数体调用

5.python中match()和search()的区别?

match()函数只检测字符串开头位置是否匹配,匹配成功才会返回结果,否则返回None。search()函数会在整个字符串内查找模式匹配,只到找到第一个匹配然后返回一个包含匹配信息的对象。也就是说match()只有在0位置匹配成功的话才有返回,如果不是开始位置匹配成功的话,match()就返回none。

  1. import re
  2. print(re.match("func", "function"))
  3. print(re.match("func", "function").span())
  4. print(re.match("func1", "function"))
  5. print(re.search("tion", "function"))
6.什么是lambda函数?他有什么好处?

lambda函数是匿名函数;使用lambda函数能够创建小型匿名函数。这种函数得名于省略了用def声明函数的标准步骤; 例:

  1. f = lambda x, y, z :x+y+z
  2. print f(1,2,3) #6
7.python中如何拷贝一个对象?(赋值,浅拷贝,深拷贝的区别)

赋值(=),就是创建了对象的一个新的引用,修改其中任意一个变量都会影响到另一个。

浅拷贝:创建一个新的对象,但它包含的是对原始对象中包含项的引用(如果用引用的方式修改其中一个对象,另外一个也会修改改变){1,完全切片方法;2,工厂函数,如list();3,copy模块的copy()函数}

深拷贝:创建一个新的对象,并且递归的复制它所包含的对象(修改其中一个,另外一个不会改变){copy模块的deep.deepcopy()函数}

  1. import copy
  2. a = [1,2,3,4,['a','b']] #定义一个列表a
  3. b = a #赋值
  4. c = copy.copy(a) #浅拷贝
  5. d = copy.deepcopy(a) #深拷贝

  6. a.append(5)
  7. print(a)
  8. #[1, 2, 3, 4, ['a', 'b'], 5] #a添加一个元素5
  9. print(b)
  10. #[1, 2, 3, 4, ['a', 'b'], 5] #b跟着添加一个元素5
  11. print(c)
  12. #[1, 2, 3, 4, ['a', 'b']] #c保持不变
  13. print(d)
  14. #[1, 2, 3, 4, ['a', 'b']] #d保持不变

  15. a[4].append('c')
  16. #print(a)
  17. [1, 2, 3, 4, ['a', 'b', 'c'], 5] #a中的list(即a[4])添加一个元素c
  18. #print(b)
  19. [1, 2, 3, 4, ['a', 'b', 'c'], 5] #b跟着添加一个元素c
  20. #print(c)
  21. #[1, 2, 3, 4, ['a', 'b', 'c']] #c跟着添加一个元素c
  22. print(d)
  23. #[1, 2, 3, 4, ['a', 'b']] #d保持不变

  24. #说明如下:
  25. #1.外层添加元素时, 浅拷贝c不会随原列表a变化而变化;内层list添加元素时,浅拷贝c才会变化。
  26. #2.无论原列表a如何变化,深拷贝d都保持不变。
  27. #3.赋值对象随着原列表一起变化
8.你对多线程和多进程的理解。

一个程序至少有一个进程,一个进程至少有一个线程; 线程的划分尺度小于进程(资源比进程少),使得多线程程序的并发性高; 进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率 ; 线线程不能够独立执行,必须依存在进程中;

优缺点:线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源的管理和保护;而进程正相反

9.Python 字典(Dictionary) items()

函数以列表返回可遍历的(键, 值) 元组数组.

10.请随机输出一个大于0小于1的数;请随机输出一个100以内的整数
  1. import random
  2. print(random.random()) # 0<1
  3. print(random.randint(1,100)) # 100以内整数
11.函数式编程的介绍

以map函数为例。首先介绍一下函数式编程是定义:将函数作为参数传递进去.

  1. map() #会根据提供的函数对指定序列做映射。
  2. map(function, iterable, ...)
  3. #第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。
  4. #function -- 函数
  5. #iterable -- 一个或多个序列

python面试总结知识点的更多相关文章

  1. Python 面试中 8 个必考问题(转载)

    Python 面试中 8 个必考问题 1.下面这段代码的输出结果是什么?请解释. def extendList(val, list=[]): list.append(val) return list ...

  2. Python面试简介及并行并发

    今天的分享内容大体如下: 一. 面试 1. 什么是面试 2. 优秀的面试 二. Python综述 1. Python设计哲学及版本变迁 2. Python发展现状及其他语言使用场景 3. GIL 4. ...

  3. Python 面试问题

    Python 面试问题 最近正在团队内部普及 Python 语言,有些刚接触 Python 语言的工程师在概念上有很多混淆的地方,刚好看到这篇文章:Python面试问题,里面列举的问题都是关于 Pyt ...

  4. Python面试常问的10个问题

    很多人想找Python工作,面试往往在基础知识点采坑了 Python是个非常受欢迎的编程语言,随着近些年机器学习.云计算等技术的发展,Python的职位需求越来越高.下面我收集了10个Python面试 ...

  5. Python面试真题答案或案例

    Python面试真题答案或案例如下: 请等待. #coding=utf-8 #1.一行代码实现1--100之和 print(sum(range(1,101))) #2.如何在一个函数内部修改全局变量 ...

  6. python遇到的知识点

    python遇到的知识点,记录一下.方便学习. 文件相关操作 查了资料,关于open()的mode参数: 'r':读 'w':写 'a':追加 'r+' == r+w(可读可写,文件若不存在就报错(I ...

  7. Python数据分析--Pandas知识点(三)

    本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘. Python数据分析--Pandas知识点(一) Python数据分析--Pandas知识点(二) 下面将是在知识点一, ...

  8. Python面试 【315+道题】

    Python面试 [315+道题] 第一部分 Python基础篇(80题) 为什么学习Python? 因为看到python的发展趋势,觉得需要与时俱进,第一点,python开发速度极快,能快速完成一个 ...

  9. Python数据分析--Pandas知识点(二)

    本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘. Python数据分析--Pandas知识点(一) 下面将是在知识点一的基础上继续总结. 13. 简单计算 新建一个数据表 ...

随机推荐

  1. Java源码-集合-LinkedList

    基于JDK1.8.0_191 介绍   LinkedList是以节点来保存数据的,不像数组在创建的时候需要申请一段连续的空间,LinkedList里的数据是可以存放在不同的空间当中,然后以内存地址作为 ...

  2. c++拷贝构造函数(翁恺c++公开课[26-27]学习笔记)

    这节课在p26.拷贝构造中讲的很清楚,建议大家耐心的去看下. 什么时候会发生拷贝构造: 对象之间的初始化赋值 使用对象作为变量进行函数传参(通常使用引用来传参从而减去不必要的拷贝构造,提高效率和代码健 ...

  3. STM32 RTC上的唤醒和闹钟

    RTC很简单只要给备用电,RTC就会不停,可以进行设置和读时间.同时在RTC上也涉及了闹钟(EXTI_17:RTC_FLAG_ALRAF,相当于RTC的定时器,闹钟到了之后进行异步操作)和唤醒中断(低 ...

  4. electron-edge-js 环境搭建

    确保nodejs环境 为 10.X  (因为edge的编译需要node对应版本的支持,太新的node不包含对应edge的编译) 1.创建工程2.使用npm init初始化程序信息3.使用npm ins ...

  5. uniGUI之uniColorButton(21)

    uniColorButton相当于VCL的ColorDialog1 若Palette 为空,则为系统自带颜色.

  6. ping命令工具:同时ping多个IP

    检测多个ip在同一时间点的响应状态,通过对比来判断哪个ip异常. 下载地址:https://share.weiyun.com/5XCkypG

  7. UIWindow的获取

    注意:还是直接用下面这个比较靠谱.尤其是iOS11之后. [UIApplication sharedApplication].keyWindow;   1.下面这种是比较严谨的方式 - (UIWind ...

  8. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 辅助类:显示下拉式功能

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  9. 【剑指Offer面试编程题】题目1214:丑数--九度OJ

    把只包含因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. 输入: 输入包括一个 ...

  10. HTML相关知识点

    标签: 块元素:可以设置宽高,div, 行内元素:不可以设置宽高,span,image, display:inline;//转换成行内元素 display:block;//转换成块元素 display ...