全网最全Python项目体系练习500例(附源代码),练完可就业 1 `6 g- n3 l- S# o+ a8 c9 p+ W/ k: B! b3 r0 u' Q" F/ ]
1.有一个jsonline格式的文件file.txt大小约为10K4 x' G) [1 B7 q% v
2.补充缺失的代码* b! }( e* U+ d. E
3.输入日期, 判断这一天是这一年的第几天?1 \3 A0 ]3 K/ i) V
4.打乱一个排好序的list对象alist? / B0 W+ f# w" i6 d- P2 n1 p5.现有字典 d= {‘a’:24,‘g’:52,‘i’:12,‘k’:33}请按value值进行排序?! v& G) z4 c' B
6.字典推导式 1 J: X7 `( r c0 \7.请反转字符串 “aStr”? - ]: K* A( w5 d' {; E3 I* ]2 E) v8.将字符串 “k:1 |k1:2|k2:3|k3:4”,处理成字典 {k:1,k1:2,…}9 _0 k3 d6 N7 F$ B2 z: f. r$ V
9.请按alist中元素的age由大到小排序+ ^: `8 q+ v9 ^; p4 O$ N* i% y0 o
10.下面代码的输出结果将是什么? 3 c _* K/ F! j) ?7 j; q11.写一个列表生成式,产生一个公差为11的等差数列 + `* p! ^* q+ k; w+ r12.给定两个列表,怎么找出他们相同的元素和不同的元素?0 `) T; \3 V( U2 E6 i
13.请写出一段python代码实现删除list里面的重复元素? 7 X4 L& g% }. j/ T E) O7 N14.给定两个list A,B ,请用找出A,B中相同与不同的元素 企业面试题 $ U4 q+ {9 H8 f+ G' a; I15.python新式类和经典类的区别? 5 L. A1 J; E" U( M. }16.python中内置的数据结构有几种? $ L( I& d" b: T# b3 b17.python如何实现单例模式?请写出两种实现方式?% o9 F/ v r2 [0 G0 k
18.反转一个整数,例如-123 --> -321 2 D P3 G. O- J9 w- U19.设计实现遍历目录与子目录,抓取.pyc文件! F# s+ w9 {0 h9 W
20.一行代码实现1-100之和 0 J9 c) B$ P- b* ~21.Python-遍历列表时删除元素的正确做法: [5 y( L0 ^& P/ P
22.字符串的操作题目 / s& F+ I6 g* \/ H6 [23.可变类型和不可变类型 . F/ T( e" K% j- Q+ n24.is和==有什么区别? 4 D# ]$ u8 q" k25.求出列表所有奇数并构造新列表 ' m0 E, x3 H: J- |26.用一行python代码写出1+2+3+102488 Z! K' f# A1 W4 n4 [# r
27.Python中变量的作用域?(变量查找顺序)8 M$ C2 W5 |. S; P9 ^
28.字符串 “123” 转换成 123 ,不使用内置api,例如 int() 4 [$ F7 {, t7 m/ e29.Given an array of integers' W8 w% c: {4 _$ f& A2 }* Q) w0 p
30.python代码实现删除一个list里面的重复元素$ P4 x& @& g1 T1 @
31.统计一个文本中单词频次最高的10个单词?3 h8 J2 _# Q: d& P- W
32.请写出一个函数满足以下条件 3 ?9 h- C) d- m; b4 |33.使用单一的列表生成式来产生一个新的列表 ?4 u# D- D* X- E9 V W! z34.用一行代码生成[1,4,9,16,25,36,49,64,81,100] ( G: q \- F. O/ Q; N' |$ m35.输入某年某月某日,判断这一天是这一年的第几天? . V5 f" p+ a! Q( ~0 e5 r5 t e36.两个有序列表,l1,l2,对这两个列表进行合并不可使用extend # s5 \6 \# \/ ]1 w1 l37.给定一个任意长度数组,实现一个函数3 h @: S5 O- L$ h" @% n( J
38.写一个函数找出一个整数数组中,第二大的数 7 k2 [; g3 ]# O; k& ]39.阅读一下代码他们的输出结果是什么?$ B6 U) t$ V, t
40.统计一段字符串中字符出现的次数 1 ]. j; `4 }/ g* Y41.super函数的具体用法和场景- T) y, r4 u+ e) u8 N" K
42.Python中类方法、类实例方法、静态方法有何区别? 2 I* K5 Y2 W4 m8 v( i: y; U7 l. }4 w43.遍历一个object的所有属性,并print每一个属性名? + j3 E2 X8 H7 q) f+ y' K. d44.写一个类,并让它尽可能多的支持操作符? - S$ S% ~; y' L( r45.介绍Cython,Pypy Cpython Numba各有什么缺点 * ~: w2 I- }- }- v; s46.请描述抽象类和接口类的区别和联系$ y9 J+ d8 T+ M) Z; U- z8 Q( }
47.Python中如何动态获取和设置对象的属性?& L5 \- \& L" H5 r+ D9 N2 m
48.哪些操作会导致Python内存溢出,怎么处理?' z/ s: m5 q& B$ ~% Q* h) E7 W; ]4 M
49.关于Python内存管理,下列说法错误的是 B& U# a' v' ]+ E6 p% O7 {$ A
50.Python的内存管理机制及调优手段?4 m; E6 q/ W+ Y0 S- f- I1 b
51.内存泄露是什么?如何避免?$ W! G) _' h( Q/ \" T
52.python常见的列表推导式? e3 F& l( U t' ^53.简述read、readline、readlines的区别? 9 J/ l" w0 y/ B. F9 y54.什么是Hash(散列函数)? : A+ v+ D& H6 }55.python函数重载机制? + J8 K+ k3 R. d6 u# Z' E56.写一个函数找出一个整数数组中,第二大的数; d; [- H5 x6 `9 L) a0 @
57.手写一个判断时间的装饰器* v8 _% p8 U6 J4 C+ ~: {: H$ n6 D/ ^
58.使用Python内置的filter()方法来过滤? 7 U; d: e2 ^) k6 P59.编写函数的4个原则. Y0 `: q3 E. K
60.函数调用参数的传递方式是值传递还是引用传递?0 G' Y% t0 K6 A2 |$ _
61.如何在function里面设置一个全局变量, m% f4 R" c8 x( r/ h W7 F
62.对缺省参数的理解 ? * q( Y$ ?- z R7 L63.Mysql怎么限制IP访问?9 G% i% v* l9 k6 F; a
64.带参数的装饰器? N; z* F( \! q J4 O; K
65.为什么函数名字可以当做参数用? 2 [; R0 M# D/ s66.Python中pass语句的作用是什么? 1 |! ~ y9 |. r' T67.有这样一段代码,print c会输出什么,为什么? 7 F5 {4 F8 x9 c9 f68.交换两个变量的值? ! g- R3 L/ O: ]' D2 I1 c69.map函数和reduce函数?# e# g. i/ \8 g) I* L, P% j
70.回调函数,如何通信的?! [. {- ?" y k. Y4 ?# ?
71.Python主要的内置数据类型都有哪些? print dir( ‘a ’) 的输出? + l% B& ?( {" G) z, u) D72.map(lambda x:xx,[y for y in range(3)])的输出?2 L( _ l/ H8 q! `: u
73.hasattr() getattr() setattr() 函数使用详解? 2 u+ Z( B' g+ ^& i' w6 Q# W" ]74.一句话解决阶乘函数?: t9 H3 x2 A+ @, R4 {9 w
75.什么是lambda函数? 有什么好处?7 e! S8 p8 g7 l- k8 t; o
76.递归函数停止的条件? / \# {% _; \# W# _& ` l77.下面这段代码的输出结果将是什么?请解释。, E3 O% z' e4 R) ]
78.什么是lambda函数?它有什么好处?写一个匿名函数求两个数的和 9 d/ a& E% @' k" {6 T9 t/ [79.对设计模式的理解,简述你了解的设计模式? $ U$ h8 ? N! p; z80.请手写一个单例 7 {& X1 C+ |( b9 f! V7 Q; _( V4 x81.单例模式的应用场景有那些?) j/ _& o+ ^, r0 M# y1 `
82.用一行代码生成[1,4,9,16,25,36,49,64,81,100]& `% ~# e4 J& a& h3 S9 X
83.对装饰器的理解,并写出一个计时器记录方法执行性能的装饰器?4 M' ]9 C* ?. B
84.解释以下什么是闭包? 1 v+ ]/ N u" t9 P85.函数装饰器有什么作用? 1 g$ j1 _6 j/ o1 r: s/ ?( n86.生成器,迭代器的区别?0 ]# W) ]# R0 X4 I
87.X是什么类型?4 A, Y z5 ?' K1 [: l% H% l: X
88.请用一行代码 实现将1-N 的整数列表以3为单位分组 9 C" N) N/ H( c1 l( A89.Python中yield的用法?" J7 z- j5 Y ?, A$ Y6 `& |
90.Python中的可变对象和不可变对象?0 G R$ Y+ H: x `# [
91.Python的魔法方法 6 H8 I) C& o* N; P/ @; M92.面向对象中怎么实现只读属性? ! s5 D1 F& Y2 C; }93.谈谈你对面向对象的理解?, @2 @* w/ o* f+ i2 V% u% F( x/ L
94.请写出一段代码用正则匹配出ip? * j6 j7 I; j2 c& l" r6 U- y5 R95.a = “abbbccc”,用正则匹配为abccc,不管有多少b,就出现一次?. U# _& g* f3 K! X: @7 Q( `
96.Python字符串查找和替换? ' A$ |. p, D# h8 k: p- a3 o2 B97.用Python匹配HTML g tag的时候,<.> 和 <.*?> 有什么区别7 V# i2 G. }& K( c
98.正则表达式贪婪与非贪婪模式的区别?- B$ }! F; A) `# J# P" |( e
99.写出开头匹配字母和下划线,末尾是数字的正则表达式? - i1 k3 L, ~# k7 G5 G100.正则表达式操作 . z k) R) t- m! |# K& k+ ^& Q7 a101.请匹配出变量A 中的json字符串。 : Z; y$ ~+ I6 U; W, z6 u9 a; S& Z102.怎么过滤评论中的表情? 0 C: U/ P! l, Q1 \103.简述Python里面search和match的区别5 M8 J! B/ }# H' h; Q5 l9 Z' h
104.请写出匹配ip的Python正则表达式1 a) K( X" A* M2 m& i
105.Python里match与search的区别? V% R3 T% [" X
106.进程总结6 b! c4 @' c7 Y
107.谈谈你对多进程,多线程,以及协程的理解,项目是否用? 3 s. R3 P8 H+ `3 t108.Python异常使用场景有那些?- M! l" _/ P' F3 R) U% v- \
109.多线程共同操作同一个数据互斥锁同步? , Z! T' e, k( L110.什么是多线程竞争?6 N5 O) U' C/ j- t1 Z) ^" f$ D' J+ Z
111.请介绍一下Python的线程同步?! O0 l5 o- `$ D- J; P9 w0 L
112.解释以下什么是锁,有哪几种锁? 6 F9 }! I7 E6 l6 s113.什么是死锁? ' B& V! K& M, h114.多线程交互访问数据,如果访问到了就不访问了? # P: }0 U, K+ ~$ {115.什么是线程安全,什么是互斥锁?4 Y, E; B, P4 _) [5 h$ L% Q+ `( y
116.说说下面几个概念:同步,异步,阻塞,非阻塞? / b: H+ |' L& i' m9 `117.什么是僵尸进程和孤儿进程?怎么避免僵尸进程? 1 |1 z9 n# G! {, R" A' F0 \118.python中进程与线程的使用场景? 1 {2 Q. w, z& {+ s! H119.线程是并发还是并行,进程是并发还是并行?& `, w l0 o8 \% w) F. b8 ^$ g
120.并行(parallel)和并发(concurrency)? : B/ O( `0 A2 m7 O1 y' b. ]121.IO密集型和CPU密集型区别?3 n6 T" G: a2 D9 Q" Y+ Z
122.python asyncio的原理?6 ]& k. i8 G) N8 i8 }
123.怎么实现强行关闭客户端和服务器之间的连接?7 M1 R9 V( F! Q
124.简述TCP和UDP的区别以及优缺点?% M9 Q" E4 Z4 {8 b
125.简述浏览器通过WSGI请求动态资源的过程?6 I. f! A V7 }+ x& ]1 Z
126.描述用浏览器访问www.baidu.com的过程 ! k: E1 g9 }) _0 d$ o! ^127.Post和Get请求的区别? " g+ P4 v% D2 U. t* d8 m- u9 C128.cookie 和session 的区别? 8 n) }" d8 j9 D0 J3 z129.列出你知道的HTTP协议的状态码,说出表示什么意思?: T1 v$ s2 {$ C& J- T- x- p
130.请简单说一下三次握手和四次挥手?1 C d+ u9 B$ o6 a
131.说一下什么是tcp的2MSL? " U6 ~: _7 N3 Q+ e7 U8 ^+ T132.为什么客户端在TIME-WAIT状态必须等待2MSL的时间? 8 ?0 u' E0 B- H4 O9 n6 D2 Q! J" r133.说说HTTP和HTTPS区别? ' R& E# S0 A5 [134.谈一下HTTP协议以及协议头部中表示数据类型的字段? " G4 c5 C' [$ U F135.HTTP请求方法都有什么?9 ? u _: E }7 Y; T: C
136.使用Socket套接字需要传入哪些参数 ?( @+ O. c8 B& G' N) e& a8 f2 @
137.HTTP常见请求头? 4 W3 z! a4 h( ~$ ~% Q138.七层模型? 8 a- c- ~# a! u8 e( s139.url的形式? : I( x9 i! p# U140.对Flask蓝图(Blueprint)的理解?. H$ m" p+ x: M, W3 D
141.Flask 和 Django 路由映射的区别? - `% z2 K) D4 t5 v) i* X! ?142.什么是wsgi,uwsgi,uWSGI?% g+ t" M3 |& o8 S$ K( q
143.Django、Flask、Tornado的对比?/ p) Q2 T# l/ g( v# D0 D
144.CORS 和 CSRF的区别?% E7 K& q( y: m N# ^2 L+ t1 g# b
145.Session,Cookie,JWT的理解; I# F1 a9 E, M
146.简述Django请求生命周期 2 s6 n H! T' ^147.用的restframework完成api发送时间时区6 z; s# `! t0 n
148.nginx,tomcat,apach到都是什么? . J @1 n9 a8 {149.请给出你熟悉关系数据库范式有哪些,有什么作用?) `0 o7 j- r: n8 J6 x& O
150.简述QQ登陆过程 # d9 B! W' k7 X. I151.post 和 get的区别? + r2 G, r! u4 o& h152.项目中日志的作用/ y" g" |! ^" j8 B/ j
153.django中间件的使用? 2 J2 F! {$ y' ^0 ?+ [+ ?6 a( |154.谈一下你对uWSGI和nginx的理解?; H p! i3 K: p' F% j* T0 {, `
155.Python中三大框架各自的应用场景?9 v0 ~5 s2 n! y8 o1 x' y% V$ f0 E
156.Django中哪里用到了线程?哪里用到了协程?哪里用到了进程? 6 j) ]; \! w6 P- d' o/ _157.有用过Django REST framework吗?6 q8 O5 U2 q* {9 n: c& A' B
158.对cookies与session的了解?他们能单独用吗?' P+ h, D. Z8 z& e
159.试列出至少三种目前流行的大型数据库% v9 U' [3 M' U+ u; Y8 g) W. U6 p! u
160.列举您使用过的Python网络爬虫所用到的网络数据包? , Y+ U0 g/ X3 `8 z L. ]3 W161.爬取数据后使用 # L6 X, i+ w: |哪个数据库存储数据的,为什么? 162.你用过的爬虫框架或者模块有哪些?优缺点? 3 _$ J) A# s( o8 W1 M163.写爬虫是用多进程好?还是多线程好? 4 {0 p* B k+ T8 q, b164.常见的反爬虫和应对方法? , Z. v* q* [/ U9 j/ H6 G165.解析网页的解析器使用最多的是哪几个?4 M1 o% |* L& K% z
166.需要登录的网页,如何解决同时限制ip,cookie,session / M: K3 W+ t3 p167.验证码的解决? 0 H8 c" {# }/ W2 w% t2 P168.使用最多的数据库,对他们的理解?6 M+ z- k$ R; A) c# x) m0 E+ Q2 k& t
169. . w* S/ r! O/ N. B5 m- b编写过哪些爬虫中间件? 170.“极验”滑动验证码如何破解?$ |$ o, T0 k4 D4 _3 h
171.爬虫多久爬一次,爬下来的数据是怎么存储? 3 j4 ]& f" `+ L' A172.cookie过期的处理问题? 0 ]4 U. O0 t+ ]( N8 R4 _0 I6 p173.动态加载又对及时性要求很高怎么处理?$ B% P2 M0 _; ^2 J) y
174.HTTPS有什么优点和缺点? 6 G( J, v+ X) F4 U- c, C `+ D* g1 r175.HTTPS是如何实现安全传输数据的?4 f1 W- l3 d4 l8 n, v0 O7 n9 }6 |
176.TTL,MSL,RTT各是什么?" K% u3 @$ i+ d: \/ G4 ~7 j
177.谈一谈你对Selenium和PhantomJS了解 # P q: q4 M8 e7 K! Z178.平常怎么使用代理的 ?5 ~5 x9 x" p3 v. H3 k
179.存放在数据库(redis、mysql等)。! A) [* R; o6 t$ J0 H5 H" V4 l6 L0 h
180.怎么监控爬虫的状态?( G2 F ^( j, n# y. b* T" ]7 b
181.描述下scrapy框架运行的机制?) [4 K/ G0 N; N
182.谈谈你对Scrapy的理解? 3 l7 U+ u- p6 S. A$ a3 A# ]183.怎么样让 scrapy 框架发送一个 post 请求(具体写出来)/ Z1 U2 _8 r+ P: D$ `3 x! Z# k7 ~
184.怎么监控爬虫的状态 ?2 q) c8 x6 [; ]" @
185.怎么判断网站是否更新? # \7 f# q8 P. d5 p186.图片、视频爬取怎么绕过防盗连接7 m% e% n M4 A& g* L" \
187.你爬出来的数据量大概有多大?大概多长时间爬一次? ! G; R% E j2 k9 Z188.用什么数据库存爬下来的数据?部署是你做的吗?怎么部署? : g1 |0 P( A6 W189.增量爬取 ! z9 E/ Z, b, U6 C8 T9 H+ r$ _9 m2 ]3 D! g190.爬取下来的数据如何去重,说一下scrapy的具体的算法依据。. d) h `9 o I t% K5 j9 `
191.Scrapy的优缺点? ; x( ]+ a5 s& A4 \4 ]7 O192.怎么设置爬取深度? 3 M k5 f: n! |) U7 {# J193.scrapy和scrapy-redis有什么区别?为什么选择redis数据库?0 ]6 S/ A+ n' J3 X( k" v
194.分布式爬虫主要解决什么问题? 3 n3 h6 ^9 L6 S c# b5 O' v; Q195.什么是分布式存储?5 E3 | _2 @4 f+ [. ?
196.你所知道的分布式爬虫方案有哪些? 1 O+ h ~- |' S( _197.scrapy-redis,有做过其他的分布式爬虫吗?4 h/ J7 V; \2 P, p" S5 Y
198.主键 超键 候选键 外键& M. ?+ n4 C% T/ M Y: l4 A9 @
199.视图的作用,视图可以更改么?. L/ _8 W& c: P R& z, v# d1 W
200.drop,delete与truncate的区别+ I* p% g/ u! U7 e+ b( b2 c' [
201.索引的工作原理及其种类; g: B2 I2 Y" A; F/ L
202.连接的种类0 j& M" Y, N: T
203.数据库优化的思路! z( t, {# N- H# B7 t
204.存储过程与触发器的区别/ b) f. R% [/ Q8 E. H
205.悲观锁和乐观锁是什么?. g+ E7 B. t4 n2 c5 y1 s
206.你常用的mysql引擎有哪些?各引擎间有什么区别?+ [# A3 c9 b6 D7 \8 o% M
207.Redis宕机怎么解决?5 ~; V# u0 A; _, K9 n* h0 @$ \
208.redis和mecached的区别,以及使用场景- f" w8 t3 [" V! ^4 M/ I8 Y
209.Redis集群方案该怎么做?都有哪些方案?6 p) E; I: q. c9 P
210.Redis回收进程是如何工作的 # }" P1 k9 O/ `4 h! m: O) \211.MongoDB中对多条记录做更新操作命令是什么?7 H/ H" T/ [) z' K% J2 ?2 s* v
212.MongoDB如何才会拓展到多个shard里? 9 p" m' ^7 V; _2 T/ ~213.编写测试计划的目的是 U# z' x* W1 q214.对关键词触发模块进行测试 1 L* V8 a. ]& o% B( }( o3 F! p215.其他常用笔试题目网址汇总 ; `6 r4 Q! d- m% |216.测试人员在软件开发过程中的任务是什么 . F! Y% P' I( q2 M; R- U* z217.一条软件Bug记录都包含了哪些内容?+ O4 P V# o7 K1 t& @4 [# e
218.简述黑盒测试和白盒测试的优缺点 ; I+ a$ l- _+ A1 k1 ]6 \' D219.请列出你所知道的软件测试种类,至少5项) Z [- a8 ?9 ? k6 H5 b) u2 V* o2 P
220.Alpha测试与Beta测试的区别是什么?) @' o9 g. `6 o+ J0 N1 T2 N+ x
221.举例说明什么是Bug?一个bug report应包含什么关键字? 1 K5 d# W* U4 d$ l$ H! d2 P222.数组中出现次数超过一半的数字-Python版 / j3 j9 i) G" T7 F/ V! {: i$ E223.求100以内的质数2 Q1 c* R. i- }7 F5 T5 Z* S
224.无重复字符的最长子串-Python实现+ d% A. S! C' z) T# J. @
225.通过2个5/6升得水壶从池塘得到3升水 ! s: B4 i0 R" X0 T- n( p( S$ {226.什么是MD5加密,有什么特点?& R. V* D6 C7 z' z7 p
227.什么是对称加密和非对称加密 W# r! y% l# T5 T2 Q9 a
228.冒泡排序的思想? ( f: D' F; D# y$ R$ V229.快速排序的思想? 9 w& m" E: _! v230.如何判断单向链表中是否有环?, |: Q; j6 S" r7 p
231.你知道哪些排序算法(一般是通过问题考算法)2 E; z7 W6 |( P& j" v, G
232.斐波那契数列 5 l$ }# E1 s7 _7 ?+ d* `233.如何翻转一个单链表?5 B+ H1 i% {6 u# I( K9 M
234.青蛙跳台阶问题3 V, ^& d* ~. e2 w( H/ o7 `$ q5 I( @1 K
235.两数之和 Two Sum5 o- b7 o, h% Y7 C: l
236.搜索旋转排序数组 Search in Rotated Sorted Array : l& I' B) F+ S1 y( |237.Python实现一个Stack的数据结构8 ~ x, B @ F. u# D
238.写一个二分查找 ( i S; b* E- @' M1 a239.set 用 in 时间复杂度是多少,为什么? 6 z, z7 g( O6 I4 E+ V2 ?240.列表中有n个正整数范围在[0,1000],进行排序; 1 L+ T: g/ _' Q) N1 }! t1 b7 x241.面向对象编程中有组合和继承的方法实现新的类9 j& C& B2 {; _/ {; _, i! U* Q
242.找出1G的文件中高频词5 ~3 `- H, \/ L1 g
243.一个大约有一万行的文本文件统计高频词 & P4 i+ }3 }3 E/ t9 E244.怎么在海量数据中找出重复次数最多的一个? ; ]7 Y; P# r; J- p# ]8 N4 Z245.判断数据是否在大量数据中( v3 `$ A! R% _
51.内存泄露是什么?如何避免? . H& _& k& `$ Q: e( m - W: d W+ C2 u0 ] 9 Z- J; t4 m7 ^6 ?# E2 Z! m内存泄漏指由于疏忽或错误造成程序未能释放已经不再使用的内存。内存泄漏并非指内存在物理上的消失,而是应用程序分配某段内存后,由于设计错误,导致在释放该段内存之前就失去了对该段内存的控制,从而造成了内存的浪费。 / `3 n$ F( F# v. L8 l% z. E: F$ t4 N6 \
1 _6 F, H- |6 c1 q( [. w
有 del() 函数的对象间的循环引用是导致内存泄露的主凶。不使用一个对象时使用: del object 来删除一个对象的引用计数就可以有效防止内存泄露问题。 % W6 [% n2 F* T% m" z( R1 M! P3 G3 G9 L% G4 x7 ]0 x: i, {9 D& u0 _
5 `" m- |! q0 G+ O) i. s
通过Python扩展模块gc 来查看不能回收的对象的详细信息。& R# W4 Y8 C; j0 B' E
n1 s' n) W2 L8 H X7 u4 T. p0 m" c
可以通过 sys.getrefcount(obj) 来获取对象的引用计数,并根据返回值是否为0来判断是否内存泄露. n% R( P6 @9 V& a' L1 u
; O, u9 X2 J7 [# F0 _9 } % V# i. r- ^, m, h- X52.python常见的列表推导式?: f# b9 B z6 P& Q# H
8 h" t. h5 w" ~! t) M
8 G Z; v( T l8 }: P( x
[表达式 for 变量 in 列表] 或者 [表达式 for 变量 in 列表 if 条件]) i7 {, Z0 r6 o; e1 B8 V5 n" b
1 ) z( u2 T( E! a P7 ^) `8 V53.简述read、readline、readlines的区别?- l; F4 g7 q! }6 t- g
5 ?" ~ U# S8 {7 S+ J& \1 z
9 X, i1 B! t6 B: N. Aread 读取整个文件- a( T1 H. s( h
readline 读取下一行$ k: T7 U8 w' ~" x" I
readlines 读取整个文件到一个迭代器以供我们遍历# f7 _4 p$ j8 i1 @. x( @
7 N+ Z/ [8 N8 L0 n* o8 v' U/ V- M
2 A [2 Q& K0 l: F
54.什么是Hash(散列函数)? : U* P& d" v" @7 Y9 t 7 N$ v o3 d P* Z ' u9 @! V3 l5 b. I' N/ c散列函数(英语:Hash function)又称散列算法、哈希函数,是一种从任何一种数据中创建小的数字“指纹”的方法。散列函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。该函数将数据打乱混合,重新创建一个叫做散列值(hash values,hash codes,hash sums,或hashes)的指纹。散列值通常用一个短的随机字母和数字组成的字符串来代表 . i6 K: s0 w$ V1 v2 I/ w$ Z. Z4 Z; Y3 I! u
9 i/ q% V: P" p8 V$ V
55.python函数重载机制?8 [/ i9 ~( t: q N/ ~( ]4 ?, N, K: O
+ @5 A1 A8 A' S9 t- Q72.map(lambda x:xx,[y for y in range(3)])的输出? 6 [2 j: H5 v! q7 k$ X# b4 o" C/ q) d/ Y
+ Y7 E* {( f4 b/ j7 L
[0, 1, 4]2 L6 T7 N. W. c
1 0 t( P" p1 g; Q73.hasattr() getattr() setattr() 函数使用详解?6 o9 f% U2 J1 |, R
, a3 l7 Y% b8 }' O, J, e/ K
& V" G- E. S5 ^# H+ E& X1 n/ y' c
hasattr(object,name)函数:: i3 e' C7 r! r$ z" w8 F6 E
判断一个对象里面是否有name属性或者name方法,返回bool值,有name属性(方法)返回True,否则返回False。 ) A8 f( o1 A. w+ F8 [4 i0 O: `, @; b$ W: L; g4 {" L
; O3 V7 P) k0 \- S9 b1 v% M; x/ k. Q" g3 K& Q
5 T5 Z. B& h; O, c; sgetattr(object, name[,default])函数: 4 }1 y7 R) K+ |5 r/ t2 @! A/ X3 _9 B: V
; i! \0 e! }1 I/ ~+ j获取对象object的属性或者方法,如果存在则打印出来,如果不存在,打印默认值,默认值可选。3 i2 l/ v3 h/ ?5 W
/ V8 u7 x1 V6 y" a7 ?
; @) R. w B0 x- u
注意:如果返回的是对象的方法,则打印结果是:方法的内存地址,如果需要运行这个方法,可以在后面添加括号().( ?4 \- w ?3 `& I0 {8 n' w
' f4 k, U2 {4 O, s6 l& m+ a