python面试题整理(一)
python基础:
1、列表生成式和生成器表达式有什么区别
我说的是首先写法不一样,列表生成式用[],生成器表达式用(),其次列表生成是一次性生成一个完整的列表,生成器表达式返回的是一个一个的值,占用内存空间更小
#列表推导式
alist = [i for i in range(10)]
print(alist) # 生成器表达式
gen = (i for i in range(10))
print(gen)
打印值:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
<generator object <genexpr> at 0x000002488B52BE58>
可以看到列表推导式返回一个列表,生成器表达式返回一个generator生成器对象,对生成器遍历可拿到值,或者使用list内置函数将生成器转为列表
2、实例化对象的过程
对类进行实例化,先执行__new__方法,返回一个对象,然后执行__init__构造方法进行初始化,如果有参数则对参数初始化
3、反射知道吗
django框架的CBV就是基于反射实现的,由dispatch方法进入,在dispatch方法中,根据请求方式不同执行对应的方法,使用getattr(request.method)
4、装饰器呢,装饰器是怎么实现的,用过哪些装饰器
5、list和tuple有什么区别
list和tuple都是python中的基本数据类型,底层都是基于数组实现的,list和tuple里面可以存放不同类型的元素
区别:
(1)、list使用'[]'表示,元组使用‘()’表示,且只有一个元素的元组必须在元素后加','表示为元组,否则是单个元素对象
(2)、list是可变数据类型,元组是不可变数据类型,元组在创建之时空间大小就固定了
(3)、元组查询效率比列表高
6、文件夹和包有什么区别,init.py文件作用,什么时候调用
如果一个文件夹里面有init.py文件,该文件夹就是一个package,init.py文件初始为空,可以写代码或者注释,在import这个package的时候会调用init.py
Django:
1、要查询年纪等于18或者名字是张三的人,怎么查
使用Q对象加管道符(|)例如:filter(Q(name = “zhangsan”) | Q(age = 18))
2、django怎么实现前后端交互
3、django怎么通过url找到视图
4、django怎么实现orm
5、如果不使用orm框架,django官方文档给的建议怎么解决sql注入问题
Linux:
1、给文件重命名有哪几种方法
cp 功能:复制文件或目录 附加:cp -r 复制目录,cp -p 保留文件属性,复制的新文件修改时间跟原文件不一样,因为复制的文件是新创建的,以当前时间为准
mv 功能:剪切文件(移动文件),改名
2、知道一个文件在某个目录下,但是该目录下还有很多文件文件夹,怎么找到需要的这个文件
find 加参数
3、常用Linux命令
4、软连接和硬链接有什么区别,对目录使用软连接还是硬链接
软连接相当于Windows创建快捷方式,如果文件用户数据块存放对额是另一个文件的路径名的指向,则该文件为软链接。软链接有自己的索引节点号(inode)。如果一个索引节点号对应多个文件则为硬链接,即同一个文件使用了多个别名。
区别:
(1)软连接有自己的索引节点号,硬链接共用一个索引节点号
(2)软链接可以对不存在的目录及文件创建,硬链接只能对已存在的文件创建
(3)硬链接不能对目录创建,因为目录有两个隐藏文件夹,. 指向当前目录,.. 指向上一层目录
(4)删除软链接不影响被指向的文件,删除原文件软链接会变成死链接,删除一个硬链接文件并不影响其他有相同索引节点号的文件
5、在一个文件里面找某个词
grep -nr 要查找的单词 查找文件名或目录名
6、查看文件有多少行
wc -l filename 查看文件有多少行
wc -w filename 查看文件有多少单词
wc -L filename 查看文件最长一行有多少个字
网络知识:
1、对TCP/IP协议的理解
2、xss防护怎么做,有哪些方法
3、ARP协议是什么
4、http和https有什么区别,从底层原理上讲
后续持续更新。。。。。。
python面试题整理(一)的更多相关文章
- Python面试题整理-更新中
几个链接: 编程零基础应当如何开始学习 Python ? - 路人甲的回答 网易云课堂上有哪些值得推荐的 Python 教程? - 路人甲的回答 怎么用最短时间高效而踏实地学习 Python? - 路 ...
- python面试题整理
1.谈谈你对csrf的理解和django中CSRF防护机制. 什么是 CSRF CSRF, Cross Site Request Forgery, 跨站点伪造请求.举例来讲,某个恶意的网站上有一个指向 ...
- python面试题整理(二)
1.进程,线程,协程定义,有什么区别 进程是操作系统分配资源的最小单位,一个进程对应一块CPU 线程是进程中的某一个控制单元,是CPU调度的最小单元,线程之间相互独立,进程结束线程也会结束,一个进程至 ...
- Python面试题及答案汇总整理(2019版)
发现网上很多Python面试题都没有答案,所以博主花了很长时间搜集整理了这套Python面试题及答案,由于网上的Python相关面试题大多数都是2019年的,所以我这个也是2019版的,哈哈~ (文末 ...
- python公司面试题集锦 python面试题大全
问题一:以下的代码的输出将是什么? 说出你的答案并解释. class Parent(object): x = 1 class Child1(Parent): pass class Child2(Par ...
- python 面试题4
Python面试题 基础篇 分类: Python2014-08-08 13:15 2071人阅读 评论(0) 收藏 举报 最近,整理了一些python常见的面试题目,语言是一种工具,但是多角度的了解工 ...
- Java工程师笔试题整理[校招篇]
Java工程师笔试题整理[校招篇] 隔着两个月即将开始校招了.你是不是也想借着这个机会崭露头角,拿到某些大厂的offer,赢取白富美.走上人生巅峰?当然如果你还没能打下Java基础,一定要先打 ...
- 转:2018最全Redis面试题整理
Java面试----2018最全Redis面试题整理 1.什么是Redis? 答:Redis全称为:Remote Dictionary Server(远程数据服务),是一个基于内存的高性能key-va ...
- 震惊!几道Python 理论面试题,Python面试题No18
本面试题题库,由公号:非本科程序员 整理发布 第1题: 简述解释型和编译型编程语言? 解释型语言编写的程序不需要编译,在执行的时候,专门有一个解释器能够将VB语言翻译成机器语言,每个语句都是执行的时候 ...
随机推荐
- Spring Boot+Jpa(MYSQL)做一个登陆注册系统(前后端数据库一站式编程)
Spring Boot最好的学习方法就是实战训练,今天我们用很短的时间启动我们第一个Spring Boot应用,并且连接我们的MySQL数据库. 我将假设读者为几乎零基础,在实战讲解中会渗透Sprin ...
- SpringBoot 集成FreeMarker
SpringBoot官方不推荐使用jsp,因为jsp不好发挥SpringBoot的特性.官方推荐使用模板引擎代替jsp,现在很多公司都使用FreeMarker来作为SpringBoot的视图. Spr ...
- 眼镜蛇扫描器2.3【旁注,目录扫描,md5解密,后台破解,0day】
功能: 1):旁注查询 引用站长工具 2):目录扫描 支持ASP PHP JSP ASPX 以及普遍存在漏洞的目录 速度还好.几乎和御剑差不多 3):0day扫描, 仿的熊眼 0day是 C ...
- 三 Spring对于延迟加载问题的解决
Spring提供了延迟加载问题的解决方法 什么是延迟加载? 延迟加载:lazy(懒加载) 执行到该行代码的时候不会发送语句,真正使用这个对象的属性的时候才会发送sql语句进行查询. 类级别延迟加载:指 ...
- 【剑指Offer面试编程题】题目1523:从上往下打印二叉树--九度OJ
题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印. 输入: 输入可能包含多个测试样例,输入以EOF结束. 对于每个测试案例,输入的第一行一个整数n(1<=n<=1000, ...
- Windows下配置多个Git账号
1. 为什么会用多个git账号? 不同git账号对应不同代码托管平台,如:github.bitbucket.gitlab.gitee(码云)等 2个GitHub账号,用于测试(最近需求,之前没研究过g ...
- Unity 公告板 Billboard
创建脚本如下 Billboard.cs using UnityEngine; using System.Collections; public class Billboard : MonoBehavi ...
- 有关《查找两个List中的不同元素》的问题解答与编程实践
郑海波 2013-07-08 问题: 有List<String> list1和List<String> list2,两个集合各有上万个元素,怎样查找两个集合中不同的元素呢? ...
- alsa-utils 的使用
ref : https://blog.csdn.net/outstanding_yzq/article/details/8126350 一.alsa-utils介绍 ALSA是kernel中的一个声 ...
- 《ES6标准入门》(阮一峰)--12.Symbol
1.概述 ES5 的对象属性名都是字符串,这容易造成属性名的冲突.比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin 模式),新方法的名字就有可能与现有方法产生冲突.如果有一种 ...