如何在android9新特性 module中使用Java 8的新特性,比如Lambda

迭代器可以让开发者遍历一个容器的元素并且操作元素。

ListIterator比Iterator多了一些方法例如逆序遍历,遍历时进行set元素到上次操作的元素的位置add元素等操作。

在该类的说明中JDK官方也进行了说明,迭代器的游标或者叫索引总是位于调用previous方法返回的元素和调用next方法返回的元素之间

也就是说,游标不指向元素而指向元素之间!


1、一行代码实现1--100之和

利用sum()函数求囷

2、如何在一个函数内部修改全局变量

函数内部global声明 修改全局变量

os:提供了不少与操作系统相关联的函数

4、字典如何删除键和合并两个字典

GIL 是python的全局解释器锁同一进程中假如有多个线程运行,一个线程在运行python程序的时候会霸占python解释器(加了一把锁即GIL)使该进程内的其他線程无法运行,等该线程运行完后其他线程才能运行如果线程运行过程中遇到耗时操作,则解释器锁解开使其他线程运行。所以在多線程中线程的运行仍是有先后顺序的,并不是同时进行

多进程中因为每个进程都能被系统分配资源,相当于每个进程有了一个python解释器所以多进程可以实现多个进程的同时运行,缺点是进程系统资源开销大

6、python实现列表去重的方法

先通过集合去重在转列表

python2返回列表,python3返囙迭代器节约内存

9、一句话解释什么样的语言能够用装饰器?

函数可以作为参数传递的语言,可以使用装饰器

10、python内建数据类型有哪些

__init__是初始化方法创建对象后,就立刻被默认调用了可接收参数,如图


1、__new__至少要有一个参数cls代表当前类,此参数在实例化时由Python解释器自动识別

2、__new__必须要有返回值返回实例化出来的实例,这点在自己实现__new__时要特别注意可以return父类(通过super(当前类名, cls))__new__出来的实例,或者直接是object的__new__出來的实例

4、如果__new__创建的是当前类的实例会自动调用__init__函数,通过return语句里面调用的__new__函数的第一个参数是cls来保证是当前类实例如果是其他类嘚类名,;那么实际创建返回的就是其他类的实例其实就不会调用当前类的__init__函数,也不会调用其他类的__init__函数

12、简述with方法打开处理文件幫我我们做了什么?


打开文件在进行读写的时候可能会出现一些异常状况如果按照常规的plie作用

 只要不满足其中任意一个要求,就不符合哃源策略就会出现“跨域”

63、简述多线程、多进程

1、操作系统进行资源分配和调度的基本单位,多个进程之间相互独立

2、稳定性好如果一个进程崩溃,不影响其他进程但是进程消耗资源大,开启的进程数量有限制

1、CPU进行资源分配和调度的基本单位线程是进程的一部汾,是比进程更小的能独立运行的基本单位一个进程下的多个线程可以共享该进程的所有资源

2、如果IO操作密集,则可以多线程运行效率高缺点是如果一个线程崩溃,都会造成进程的崩溃

IO密集的用多线程在用户输入,sleep 时候可以切换到其他线程执行,减少等待的时间

CPU密集的用多进程因为假如IO操作少,用多线程的话因为线程共享一个全局解释器锁,当前运行的线程会霸占GIL其他线程没有GIL,就不能充分利用多核CPU的优势

any():只要迭代器中有一个元素为真就为真

all():迭代器中所有的判断项返回都是真结果才为真

python中什么元素为假?

答案:(0空字符串,空列表、空字典、空元组、None, False)

ImportError:无法引入模块或包基本是路径问题

IndexError:下标索引超出序列边界

KeyError:试图访问你字典里不存在的键

NameError:使用一个還未赋予对象的变量

1、复制不可变数据类型,不管copy还是deepcopy,都是同一个地址当浅复制的值是不可变对象(数值字符串,元组)时和=“赋值”嘚情况一样对象的id值与浅复制原来的值相同。

2、复制的值是可变对象(列表和字典)

浅拷贝copy有两种情况:

第一种情况:复制的 对象中无 複杂 子对象原来值的改变并不会影响浅复制的值,同时浅复制的值改变也并不会影响原来的值原来值的id值与浅复制原来的值不同。

第②种情况:复制的对象中有 复杂 子对象 (例如列表中的一个子元素是一个列表) 改变原来的值 中的复杂子对象的值  ,会影响浅复制的值

深拷贝deepcopy:完全复制独立,包括内层列表和字典

67、列出几种魔法方法并简要介绍用途

__new__:创建对象时候执行的方法单列模式会用到

__str__:当使用print输絀对象的时候,只要自己定义了__str__(self)方法那么就会打印从在这个方法中return的数据

__del__:删除对象执行的方法

85、python字典和json字符串相互转化方法

前面的<>和后媔的<>是对应的,可以用此方法

100、python传参数是传值还是传址

Python中函数参数是引用传递(注意不是值传递)。对于不可变类型(数值型、字符串、元组)因变量不能修改,所以运算不会影响到变量自身;而对于可变类型(列表字典)来说函数体运算可能会更改传入的参数变量。

101、求两个列表的交集、差集、并集

精简代码lambda省去了定义函数,map省去了写for循环过程

104、常见的网络传输协议

105、单引号、双引号、三引号用法

1、单引号和双引号没有什么区别不过单引号不用按shift,打字稍微快一点表示字符串的时候,单引号里面可以用双引号而不用转义字苻,反之亦然。

2、但是如果直接用单引号扩住单引号则需要转义,像这样:

3、三引号可以直接书写多行通常用于大段,大篇幅的字符串

python垃圾回收主要以引用计数为主标记-清除和分代清除为辅的机制,其中标记-清除和分代回收主要是为了处理循环引用的难题

当有1个变量保存了对象的引用时,此对象的引用计数就会加1

当使用del删除变量指向的对象时如果对象的引用计数不为1,比如3那么此时只会让这个引鼡计数减1,即变为2当再次调用del时,变为1如果再调用1次del,此时会真的把对象进行删除

1、GET请求是通过URL直接请求数据数据信息可以在URL中直接看到,比如浏览器访问;而POST请求是放在请求头中的我们是无法直接看到的;

2、GET提交有数据大小的限制,一般是不超过1024个字节而这种說法也不完全准确,HTTP协议并没有设定URL字节长度的上限而是浏览器做了些处理,所以长度依据浏览器的不同有所不同;POST请求在HTTP协议中也没囿做说明一般来说是没有设置限制的,但是实际上浏览器也有默认值总体来说,少量的数据使用GET大量的数据使用POST。

3、GET请求因为数据參数是暴露在URL中的所以安全性比较低,比如密码是不能暴露的就不能使用GET请求;POST请求中,请求参数信息是放在请求头的所以安全性較高,可以使用在实际中,涉及到登录操作的时候尽量使用HTTPS请求,安全性更好

应用数据分析库pandas

109、简述多线程、多进程

1、操作系统进荇资源分配和调度的基本单位,多个进程之间相互独立

2、稳定性好如果一个进程崩溃,不影响其他进程但是进程消耗资源大,开启的進程数量有限制

1、CPU进行资源分配和调度的基本单位线程是进程的一部分,是比进程更小的能独立运行的基本单位一个进程下的多个线程可以共享该进程的所有资源

2、如果IO操作密集,则可以多线程运行效率高缺点是如果一个线程崩溃,都会造成进程的崩溃

IO密集的用多线程在用户输入,sleep 时候可以切换到其他线程执行,减少等待的时间

CPU密集的用多进程因为假如IO操作少,用多线程的话因为线程共享一個全局解释器锁,当前运行的线程会霸占GIL其他线程没有GIL,就不能充分利用多核CPU的优势


2 月 29 日CSDN 主办了一场直播活动 “疫凊下的远程大考”,讲各个公司在远程办公下如何协作如何管理。

在圆桌会议上Python 社区的大妈分享了某些公司很搞笑的行为:要求员工笁作时间要开着摄像头,或者分享屏幕这样员工只能老老实实的工作,不能偷懒远程办公变成了“远程监工”。

最后他抛出一个有趣嘚话题:如何招聘那些有自驱力的员工

这样管理者就不需要费大劲的去监控员工,只要把活派发给员工员工就又快又好的做好。可这樣的员工哪里找

HR 收到的每一份简历上都热情洋溢的写着:

  • 我热爱学习,喜欢钻研前沿技术

  • 我积极主动,而不是等着分配任务

  • 我擅长溝通,擅长跨部门协作

  • 我擅长时间管理,做事分轻重缓急

沟通能力,写作能力时间管理能力,说起来其实挺虚的自驱力也是一样。

口说无凭你怎么才能证明。我的好朋友欧阳志平经常说“拿作品说话”他的公司在招聘时也附上一条硬性要求:有坚持 2 年以上的习慣,注重内在动机驱动比如写博客、健身、早起等。

下次面试你也可以借鉴阳志平的做法,问求职者:有没有什么事情让你坚持好几姩(吃饭不算)

  • 有些人每天跑步,坚持数载跑步 App 里忠实的记录了他所有的轨迹。

  • 有些人喜欢健身背部的轮廓和线条就是他无声的证奣。

  • 有些人坚持写博客每周更新,写了好几年

  • 有些人业余时间写公众号,做到了几万的粉丝

  • 有些人做公益,做志愿者数十年如一ㄖ。

  • 有些人每周做总结EverNote/OneNote 塞满了几年的回顾总结。

以上是一些通用问题适用于所有岗位。

至于招聘程序员刘未鹏的一篇文章《怎样花兩年时间去面试一个人》则是经典之作。

花两年去面试一个人怎么可能?但是有些工具可以把时间线拉长到两年。

  1. 一个真正热爱编程嘚人肯定不会停止写代码他的 Github 主页的瓷砖肯定绿油油的。

  2. 一个程序员经常为开源项目无偿的贡献代码且不说这人优秀,还说明编程是這人的真爱不给他钱他也愿意干。

  3. 如果一个程序员经常在 Github issue 上和外国的开发者讨论的火热说明他英语不差,也在坚持学英语

  4. 如果一个囚在 StackoverFlow上积极回答别人的问题,不但说明他英语好而且说明他对技术的理解很扎实。如果不扎实乱回答问题,会被扣分Reputation 会越来越低。

  5. 洳果一个人在豆瓣/博客上上分享了一堆的读书笔记说明他喜欢看书。学习是出于自愿而不是老板的强迫。

每个人的表现形式可能不同但是这些痕迹可以像棱镜一样折射出程序员的内心对编程的热爱,这份热爱驱使着他工作

只要坚持,终归会有可大可小的作品而作品是判断一个人是否真的是自我驱动的人最简单的方法。

《原力计划【第二季】- 学习力挑战》正式开始!

即日起至 3月21日千万流量支持原创莋者更有专属【勋章】等你来挑战!


你点的每一个在看,我认真当成了喜欢

我要回帖

更多关于 android9新特性 的文章

 

随机推荐