黑马程序员技术交流社区

标题: Python面试经验分享——北京华科软科技有限公司 [打印本页]

作者: 逆风TO    时间: 2018-10-22 10:51
标题: Python面试经验分享——北京华科软科技有限公司
本帖最后由 就业高冷派 于 2018-10-22 11:27 编辑

公司名称:北京华科软科技有限公司西安分部
公司经营范围包括许可经营项目:水利电力行业的计算机软件开发,包括工程项目管理系统开发,办公自动化系统开发;计算机信息系统集成;工程三维仿真技术开发;工程施工监控及自动化等技术开发;以及网络建设、系统集成、互联网经营、电子商务等业务
注册资金:800万
公司地址:高新区都市之门C座
公司图片:
人事小姐姐先进来聊了几句,大概内容无非就是了解一下性格呀,就普通聊天,也问到上家公司的一些情况,涉及到业务内容的都简单带过,有问到离职原因,这个自己可以结合自己的情况说一个。
人事简单聊完,等了一会来了一个技术组长,有问到一些问题,简单整理如下:

Q:python中可变数据类型和不可变数据类型你清楚不,能简述一下原理吗?
A:不可变数据类型:数值型、字符串型string和元组tuple
不允许变量的值发生变化,如果改变了变量的值,相当于是新建了一个对象,而对于相同的值的对象,在内存中则只有一个对象(一个地址),如下图用id()方法可以打印对象的id
可变数据类型:列表list和字典dict;
允许变量的值发生变化,即如果对变量进行append、+=等这种操作后,只是改变了变量的值,而不会新建一个对象,变量引用的对象的地址也不会变化,不过对于相同的值的不同对象,在内存中则会存在不同的对象,即每个对象都有自己的地址,相当于内存中对于同值的对象保存了多份,这里不存在引用计数,是实实在在的对象。
Q:单例模式的应用场景有哪些?
A:单例模式应用的场景一般发现在以下条件下:
(1)资源共享的情况下,避免由于资源操作时导致的性能或损耗等。如日志文件,应用配置。
(2)控制资源的情况下,方便资源之间的互相通信。如线程池等。 1.网站的计数器 2.应用配置 3.多线程池 4. 数据库配置,数据库连接池 5.应用程序的日志应用....
Q:解释一下什么是闭包?
A:在函数内部再定义一个函数,并且这个函数用到了外边函数的变量,那么将这个函数以及用到的一些变量称之为
闭包。
Q:生成器、迭代器的区别?
A:迭代器是一个更抽象的概念,任何对象,如果它的类有 next 方法和 iter 方法返回自己本身,对于 string、list、dict、tuple 等这类容器对象,使用 for 循环遍历是很方便的。在后台 for 语句对容器对象调用 iter()函数,iter()是 python 的内置函数。iter()会返回一个定义了 next()方法的迭代器对象,它在容器中逐个访问容器内元素,next()也是 python 的内置函数。在没有后续元素时,next()会抛出一个 StopIteration 异常。
生成器(Generator)是创建迭代器的简单而强大的工具。它们写起来就像是正规的函数,只是在需要返回数据的时候使用 yield 语句。每次 next()被调用时,生成器会返回它脱离的位置(它记忆语句最后一次执行的位置和所有的数据值)
区别:生成器能做到迭代器能做的所有事,而且因为自动创建了 iter()和 next()方法,生成器显得特别简洁,而且生成器也是高效的,使用生成器表达式取代列表解析可以同时节省内存。除了创建和保存程序状态的自动方法,当发生器终结时,还会自动抛出 StopIteration 异常。
Q:Python 里 match 与 search 的区别?
A:match()函数只检测 RE 是不是在 string 的开始位置匹配,search()会扫描整个 string 查找匹配;也就是说 match()只有在 0 位置匹配成功的话才有返回,如果不是开始位置匹配成功的话,match()就返回 none。
Q:谈谈你对多进程,多线程,以及协程的理解,项目是否用?
A:这个问题被问的概率相当之大,其实多线程,多进程,在实际开发中用到的很少,除非是那些对项目性能要求特别高的,有的开发工作几年了,也确实没用过,你可以这么回答,给他扯扯什么是进程,线程(cpython 中是伪多线程)的概念就行,实在不行你就说你之前写过下载文件时,用过多线程技术,或者业余时间用过多线程写爬虫,提升效率。
        进程:一个运行的程序(代码)就是一个进程,没有运行的代码叫程序,进程是系统资源分配的最小单位,进程拥有自己独立的内存空间,所以进程间数据不共享,开销大。
        线程: 调度执行的最小单位,也叫执行路径,不能独立存在,依赖进程存在一个进程至少有一个线程,叫主线程,而多个线程共享内存(数据共享,共享全局变量),从而极大地提高了程序的运行效率。
        协程:是一种用户态的轻量级线程,协程的调度完全由用户控制。协程拥有自己的寄存器上下文和栈。 协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器上下文和栈,直接操作栈则基本没有内核切换的开销,可以不加锁的访问全局变量,所以上下文的切换非常快。
Q:什么是多线程竞争?
A:线程是非独立的,同一个进程里线程是数据共享的,当各个线程访问数据资源时会出现竞争状态即:数据几乎同步会被多个线程占用,造成数据混乱 ,即所谓的线程不安全那么怎么解决多线程竞争问题?-- 锁.
       锁的好处:确保了某段关键代码(共享数据资源)只能由一个线程从头到尾完整地执行能解决多线程资源竞争下的原子操作问题。
       锁的坏处:阻止了多线程并发执行,包含锁的某段代码实际上只能以单线程模式执行,效率就大大地下降了锁的致命问题:死锁。
Q:解释一下什么是锁,有哪几种锁?
A:锁(Lock)是 Python 提供的对线程控制的对象。有互斥锁、可重入锁、死锁。
后面还针对锁简单聊了下,问题不难。难的是要营造一个比较好的聊天环境,切记不能将面试氛围搞的一问一答特别死板。如果你的面试官是比较沉闷的那种性格,你要尝试性去沟通,带动聊天氛围。总结一下,本次的面试过程还是挺愉快的,谈到薪资这块能给到7+,周末双休  任务不是很重。最后还是预祝小伙伴们能够找到一个比较好的工作吧!



作者: 逆风TO    时间: 2018-10-22 14:35

感谢分享~
作者: 殷凯老师    时间: 2018-10-22 15:49
感谢分享!!!
作者: 黑马程序员啊    时间: 2018-10-22 16:10

感谢分享!!!!!
作者: 多喝点热水~    时间: 2018-10-22 16:10
                                                   
作者: 温柔一刀!喵!    时间: 2018-10-22 16:19
nice!nice!
作者: fujiangbo    时间: 2018-10-22 17:59

作者: 1098018910    时间: 2018-10-22 18:13
感谢分享!!!
作者: zhuyanting    时间: 2018-10-22 18:20
爱分享的人最美
作者: 专找bug    时间: 2018-10-22 18:21

感谢分享
作者: 从容微笑    时间: 2018-10-22 18:23

作者: 18629541359    时间: 2018-10-22 18:30
不错不错,谢谢分享!
作者: SunYan    时间: 2018-10-22 19:01
黑马666666666
作者: duanshaobo    时间: 2018-10-22 19:36
谈到薪资这块能给到7+,周末双休  任务不是很重。最后还是预祝小伙伴们能够找到一个比较好的工作吧!

作者: duanshaobo    时间: 2018-10-22 19:38
我能不能说真话
作者: wangxue123456    时间: 2018-10-22 19:42
66666666666666666666666666666
作者: wangxue123456    时间: 2018-10-22 19:49
感谢分享
作者: 小伙啊    时间: 2018-10-22 19:50
感谢分享!!!
作者: pcdate    时间: 2018-10-22 19:50
666666666666666666666
作者: wangxue123456    时间: 2018-10-22 19:51
间隔小于30秒 请稍后在发
作者: JavaEE风清扬    时间: 2018-10-22 20:13
666666666666666666666666666666
作者: little_superman    时间: 2018-10-22 20:22

66666666666666666666666666666
作者: 兮兮哈哈    时间: 2018-10-22 20:42
6666666666666
作者: 耙丫丫    时间: 2018-10-22 21:27

作者: 谢先森    时间: 2018-10-22 21:53
感谢分享6666666666
作者: 半个程序员    时间: 2018-10-22 22:13
程序员节日快乐。。。。啊哈哈哈哈哈哈。
作者: 半个程序员    时间: 2018-10-22 22:16
程序员节日快乐。。。。啊哈哈哈哈哈哈。
作者: zplxwl    时间: 2018-10-22 22:54
666666666666666666
作者: py@py    时间: 2018-10-23 09:28
感谢分享
作者: yy1134787753    时间: 2018-10-23 09:38
感谢分享
作者: 760486198    时间: 2018-10-23 09:41
学习到很多
作者: 疯子小花花    时间: 2018-10-23 10:21
棒棒棒棒!!!
作者: 仙人掌sandy    时间: 2018-10-23 10:45
爱分享的人最美
作者: yangyifen    时间: 2018-10-23 11:06
感谢分享666666666666
作者: 小公举    时间: 2018-10-23 11:07
感谢分享
作者: ouweina    时间: 2018-10-23 11:13
6666666666666666666666666666666666666
作者: zhanghua342    时间: 2018-10-23 11:25
感谢分享!!!!!
作者: 小丹子    时间: 2018-10-23 11:25

作者: 淡写薰衣草的香    时间: 2018-10-23 11:26

作者: 淡写薰衣草的香    时间: 2018-10-23 11:36

作者: 零度☆黎明    时间: 2018-10-23 12:04
棒棒哒 .....................
作者: mydorling11    时间: 2018-10-23 12:05
好棒 好牛
作者: superbaby    时间: 2018-10-23 12:21
感谢分享....................
作者: #风萧萧#    时间: 2018-10-23 12:41
谢谢楼主,辛苦了...........
作者: json0314    时间: 2018-10-23 12:47

很好,加油加油
作者: SharkSSB    时间: 2018-10-23 14:14

作者: 你不爱我    时间: 2018-10-23 15:47
感谢分享~                                   
作者: 王航    时间: 2018-10-23 16:18
不错不错,谢谢分享!
作者: 指间    时间: 2018-10-23 16:38
6666666666666666666666
作者: xiaoheizi    时间: 2018-10-23 16:42
666666666666666666666
作者: zhaosongzhi    时间: 2018-10-23 17:03
666666666666666的飞起
作者: kdhdjdj    时间: 2018-10-24 14:14
666666666666666666666666
作者: 1467584    时间: 2018-10-24 14:22
666666666666
作者: ruoquan    时间: 2018-10-24 14:33
6666666,点赞
作者: 举个栗子    时间: 2018-10-24 14:53

作者: 举个栗子    时间: 2018-10-24 14:56

作者: 梅优良    时间: 2018-10-24 16:02
6666666666666666666
作者: 梅优良    时间: 2018-10-24 16:03
666666666666666666
作者: 梅优良    时间: 2018-10-24 16:08
66666666666666666666
作者: 章鱼顶呱呱    时间: 2018-10-24 16:47
666666666666
作者: 致橡树    时间: 2018-10-24 17:32
666666666666666
作者: 半个程序员    时间: 2018-10-25 10:38
程序员咔咔咔咔咔咔。
作者: huochao    时间: 2018-10-25 16:55
6666666666666666666666666666666666666666666666666666
作者: dajiahao    时间: 2018-10-25 17:04
9999999999999999999999999
作者: hongping    时间: 2018-10-25 17:09
花花很给力
作者: 茶包哥    时间: 2018-10-25 17:29
66666666666
作者: 凯凯小王子    时间: 2018-10-25 18:15
666666666666666
作者: 哦嗨呦    时间: 2018-10-25 18:26
顶!!!!!!!!
作者: 小西西哦    时间: 2018-10-26 10:51
66666666666666666666666666666666666
作者: 影@子~    时间: 2018-10-26 15:36
感谢分享
作者: 就业高冷派    时间: 2018-11-22 14:13
逆风TO 发表于 2018-10-22 14:35
感谢分享~

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:13
殷凯老师 发表于 2018-10-22 15:49
感谢分享!!!

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:13
黑马程序员啊 发表于 2018-10-22 16:10
感谢分享!!!!!

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:13
多喝点热水~ 发表于 2018-10-22 16:10

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:13
温柔一刀!喵! 发表于 2018-10-22 16:19
nice!nice!

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:14
fujiangbo 发表于 2018-10-22 17:59

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:14
1098018910 发表于 2018-10-22 18:13
感谢分享!!!

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:14
zhuyanting 发表于 2018-10-22 18:20
爱分享的人最美

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:14
专找bug 发表于 2018-10-22 18:21
感谢分享

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:14
从容微笑 发表于 2018-10-22 18:23

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:14
18629541359 发表于 2018-10-22 18:30
不错不错,谢谢分享!

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:14
SunYan 发表于 2018-10-22 19:01
黑马666666666

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:15
duanshaobo 发表于 2018-10-22 19:36
谈到薪资这块能给到7+,周末双休  任务不是很重。最后还是预祝小伙伴们能够找到一个比较好的工作吧!
...

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:15
duanshaobo 发表于 2018-10-22 19:38
我能不能说真话

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:16
wangxue123456 发表于 2018-10-22 19:42
66666666666666666666666666666

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:16
wangxue123456 发表于 2018-10-22 19:49
感谢分享

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:16
小伙啊 发表于 2018-10-22 19:50
感谢分享!!!

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:16
pcdate 发表于 2018-10-22 19:50
666666666666666666666

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:16
wangxue123456 发表于 2018-10-22 19:51
间隔小于30秒 请稍后在发

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:17
JavaEE风清扬 发表于 2018-10-22 20:13
666666666666666666666666666666

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:17
little_superman 发表于 2018-10-22 20:22
66666666666666666666666666666

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:17
兮兮哈哈 发表于 2018-10-22 20:42
6666666666666

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:17
耙丫丫 发表于 2018-10-22 21:27

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:17
谢先森 发表于 2018-10-22 21:53
感谢分享6666666666

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:18
半个程序员 发表于 2018-10-22 22:13
程序员节日快乐。。。。啊哈哈哈哈哈哈。

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:18
半个程序员 发表于 2018-10-22 22:16
程序员节日快乐。。。。啊哈哈哈哈哈哈。

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:18
zplxwl 发表于 2018-10-22 22:54
666666666666666666

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:18
zplxwl 发表于 2018-10-22 22:54
666666666666666666

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:18
py@py 发表于 2018-10-23 09:28
感谢分享

努力向前~
作者: 就业高冷派    时间: 2018-11-22 14:19
yy1134787753 发表于 2018-10-23 09:38
感谢分享

努力向前~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2