Python部分

  1. 将一个字符串逆序,不能使用反转函数
  2. 求从10到100中能被3或5整除的数的和
  3. What is Python? What are the benefits of using Python?
  4. What is PEP 8?
  5. What is pickling and unpickling?
  6. How Python is interpreted?
  7. What are the tools that help to find bugs or perform static analysis?
  8. What are Python decorators?
  9. What is the difference between list and tuple?
  10. What are the built-in type does python provides?
  11. What is namespace in Python?
  12. What is lambda in Python?
  13. In Python what are iterators?
  14. What is unittest in Python?
  15. What are generators in Python?
  16. How can you copy an object in Python?
  17. What is module and package in Python?
  18. Mention what are the rules for local and global variables in Python?
  19. Explain how can you make a Python Script executable on Unix?
  20. Explain how to delete a file in Python?
  21. How can you share global variables across modules?
  22. Explain how can you generate random numbers in Python?
  23. Explain how can you access a module written in Python from C?
  24. Mention the use of // operator in Python?
  25. Mention five benefits of using Python?
  26. a=1, b=2, 不用中间变量交换a和b的值
  27. 请用自己的算法, 按升序合并如下两个list, 并去除重复的元素

    list1 = [2, 3, 8, 4, 9, 5, 6]
    list2 = [5, 6, 10, 17, 11, 2]
  28. 写一个简单的python socket编程
  29. 请描述set的用途并举例说明
  30. 请简述python2.x 与python3.x的主要区别
  31. 简述python新式类和旧式类的区别
  32. Python里面search()和match()的区别?
  33. 用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别?
  34. 请简述线程\进程\协程的特性
  35. 请简述你对python闭包的理解
  36. 静态函数, 类函数, 成员函数的区别?
  37. Python和c和Java的对比
  38. Python的内存管理
  39. Python的装饰器内部实现原理
  40. Python的面向对象和Java面向对象的区别
  41. Python面向对象的静态方法
  42. Python为啥是动态语言
  43. 动态语言和静态语言的区别
  44. 描述你知道的设计模式及各模式特点
  45. 算法(冒泡,二叉树,堆排序等)
  46. Python的线程
  47. Python的进程
  48. Python的线程池
  49. Python的面向对象和c面向过程的区别
  50. 为什么c没有面向对象依然可以封装函数
  51. 请用多线程并发爬取3个知名网站的首页
  52. 解释一下 Django 和 Tornado 的关系、差别

    Django源自一个在线新闻 Web站点,于 2005 年以开源的形式被释放出来。

    Django 框架的核心组件有:

    用于创建模型的对象关系映射为最终用户设计的完美管理界面一流的 URL 设计设计者友好的模板语言缓存系统等等

    它鼓励快速开发,并遵循MVC设计。Django遵守 BSD版权,最新发行版本是Django

    1.4,于2012年03月23日发布.Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以“插件”形式服务于整个框架,Django有许多功能强大的第三方插件,你甚至可以很方便的开发出自己的工具包。这使得Django具有很强的可扩展性。它还强调快速开发和DRY(Do Not RepeatYourself)原则。

    Tornado是 FriendFeed使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本。这个 Web 框架看起来有些像 web.py 或者 Google 的 webapp,不过为了能有效利用非阻塞式服务器环境,这个 Web 框架还包含了一些相关的有用工具和优化。

    Tornado 和现在的主流 Web 服务器框架(包括大多数Python 的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快。得利于其 非阻塞的方式和对epoll的运用,Tornado 每秒可以处理数以千计的连接,这意味着对于实时 Web服务来说,Tornado 是一个理想的 Web 框架。我们开发这个 Web 服务器的主要目的就是为了处理 FriendFeed 的实时功能 ——在 FriendFeed 的应用里每一个活动用户都会保持着一个服务器连接。(关于如何扩容 服务器,以处理数以千计的客户端的连接的问题。
  53. 解释下django-debug-toolbar的使用

    使用django开发站点时,可以使用django-debug-toolbar来进行调试。在settings.py中添加’debug_toolbar.middleware.DebugToolbarMiddleware’到项目的MIDDLEWARE_CLASSES 内。
  54. 如何进行Django单元测试
    Django的单元测试使用python的unittest模块,这个模块使用基于类的方法来定义测试。类名为django.test.TestCase,继承于python的unittest.TestCase。
    from django.test import TestCase
    from myapp.models import Animal
    class AnimalTestCase(TestCase):
        def setUp(self):
            Animal.objects.create(name="lion", sound="roar")
            Animal.objects.create(name="cat", sound="meow")
        def test_animals_can_speak(self):
            """Animals that can speak are correctly identified"""
            lion = Animal.objects.get(name="lion")
            cat = Animal.objects.get(name="cat")
            self.assertEqual(lion.speak(), 'The lion says "roar"')
            self.assertEqual(cat.speak(), 'The cat says "meow"')

    执行目录下所有的测试(所有的test*.py文件):运行测试的时候,测试程序会在所有以test开头的文件中查找所有的test cases(inittest.TestCase的子类),自动建立测试集然后运行测试
    python manage.py testanimals.tests

  55. 解释下Http协议
    HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。
    HTTP协议的主要特点可概括如下:
    1.支持客户/服务器模式。

    2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。

    3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。

    4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

    5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
  56. 解释下Http请求头和常见响应状态码

    Accept:指浏览器或其他客户可以接爱的MIME文件格式。可以根据它判断并返回适当的文件格式。

    Accept-Charset:指出浏览器可以接受的字符编码。英文浏览器的默认值是ISO-8859-1.

    Accept-Language:指出浏览器可以接受的语言种类,如en或en-us,指英语。

    Accept-Encoding:指出浏览器可以接受的编码方式。编码方式不同于文件格式,它是为了压缩文件并加速文件传递速度。浏览器在接收到Web响应之后先解码,然后再检查文件格式。

    Cache-Control:设置关于请求被代理服务器存储的相关选项。一般用不到。

    Connection:用来告诉服务器是否可以维持固定的HTTP连接。HTTP/1.1使用Keep-Alive为默认值,这样,当浏览器需要多个文件时(比如一个HTML文件和相关的图形文件),不需要每次都建立连接。

    Content-Type:用来表名request的内容类型。可以用HttpServletRequest的getContentType()方法取得。

    Cookie:浏览器用这个属性向服务器发送Cookie。Cookie是在浏览器中寄存的小型数据体,它可以记载和服务器相关的用户信息,也可以用来实现会话功能。

    状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值:

    1xx:指示信息–表示请求已接收,继续处理

    2xx:成功–表示请求已被成功接收、理解、接受

    3xx:重定向–要完成请求必须进行更进一步的操作

    4xx:客户端错误–请求有语法错误或请求无法实现

    5xx:服务器端错误–服务器未能实现合法的请求

    常见状态代码、状态描述、说明:

    200 OK     //客户端请求成功

    400 Bad Request  //客户端请求有语法错误,不能被服务器所理解

    401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用

    403 Forbidden  //服务器收到请求,但是拒绝提供服务

    404 Not Found  //请求资源不存在,eg:输入了错误的URL

    500 Internal Server Error //服务器发生不可预期的错误

    503 Server Unavailable  //服务器当前不能处理客户端的请求,一段时间后可能恢复正常
  57. django models 中如何实现反向查找? 如a表中通过外键关联了b表, 那通过b表如何反查到a表中有多少记录关联到了b表中的某条记录
  58. django orm如何输入自定义的原少sql语句?
  59. 描述django orm query api中 Q语句与F语句的作用及区别
  60. django中如何实现ajax在post数据时出现的csrf 403 forbidden的问题?描述解决步骤
  61. django 自定义标签tag的作用,及配置步骤
 
 

前端篇

  1. 有哪项方式可以对一个DOM设置它的CSS样式?
    •外部样式表,引入一个外部css文件
    •内部样式表,将css代码放在 <head> 标签内部
    •内联样式,将css样式直接定义在 HTML 元素内部
  2. CSS都有哪些选择器?
    •派生选择器(用HTML标签申明)
    •id选择器(用DOM的ID申明)
    •类选择器(用一个样式类名申明)
    •属性选择器(用DOM的属性申明,属于CSS2,IE6不支持,不常用,不知道就算了)
    除了前3种基本选择器,还有一些扩展选择器,包括
    •后代选择器(利用空格间隔,比如div .a{  })
    •群组选择器(利用逗号间隔,比如p,div,#a{  }) 
    那么问题来了,CSS选择器的优先级是怎么样定义的?
  3. CSS中可以通过哪些属性定义,使得一个DOM元素不显示在浏览器可视范围内?
    最基本的:

    设置display属性为none,或者设置visibility属性为hidden

    技巧性:
    设置宽高为0,设置透明度为0,设置z-index位置在-1000
  4. rgba()和opacity的透明效果有什么不同?
    答案: rgba()和opacity都能实现透明效果,但最大的不同是opacity作用于元素,以及元素内的所有内容的透明度,而rgba()只作用于元素的颜色或其背景色。(设置rgba透明的元素的子元素不会继承透明效果!)
  5. px和em的区别? 
    px和em都是长度单位,区别是,px的值是固定的,指定是多少就是多少,计算比较容易。em得值不是固定的,并且em会继承父级元素的字体大小。 浏览器的默认字体高都是16px。所以未经调整的浏览器都符合: 1em=16px。那么12px=0.75em, 10px=0.625em。 
  6. 已知ID的Input输入框,希望获取这个输入框的输入值,怎么做?(不使用第三方框架)
  7. 希望获取到页面中所有的checkbox怎么做?(不使用第三方框架)
  8. 设置一个已知ID的DIV的html内容为xxxx,字体颜色设置为黑色(不使用第三方框架)
  9. 如何实现跨域请求?请描述实现原理
  10. 用js实现随机选取10--100之间的10个数字,存入一个数组,并排序。
  11. 原生JS的window.onload与Jquery的$(document).ready(function(){})有什么不同?如何用原生JS实现Jq的ready方法?
    1. window.onload()方法是必须等到页面内包括图片的所有元素加载完毕后才能执行。
    2. $(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕。
  12. 更多js http://blog.jobbole.com/78346/#q3
 
 

Python 开发面试题的更多相关文章

  1. 前端开发面试题-JavaScript(转载)

    本文由 本文的原作者markyun 收集总结. 介绍js的基本数据类型. Undefined.Null.Boolean.Number.String. ECMAScript 2015 新增:Symbol ...

  2. 100个iOS开发面试题汇总-王刚韧的技术博客

    100个iOS开发面试题汇总 关于iOS开发面试,不管对于招聘和应聘来说,面试都是很重要的一个环节,特别对于开发者来说,面试中的技术问题环节不仅是企业对应聘者技能和积累的考察,也是一个开发者自我检验的 ...

  3. 前端开发面试题收集 JS

    前端开发面试题收集-JS篇 收集经典的前端开发面试题 setTimeout的时间定义为0有什么用? javascript引擎是单线程处理任务的,它把任务放在队列中,不会同步执行,必须在完成一个任务后才 ...

  4. 前端开发面试题总结之——JAVASCRIPT(一)

    ___________________________________________________________________________________ 相关知识点 数据类型.运算.对象 ...

  5. 前端开发面试题总结之——HTML

    ______________________________________________________________________________________________ 相关知识点 ...

  6. 前端开发面试题总结之——CSS3

    ____________________________________________________________________________________________ 相关知识点 布 ...

  7. J2EE进阶(十四)超详细的Java后台开发面试题之Spring IOC与AOP

    J2EE进阶(十四)超详细的Java后台开发面试题之Spring IOC与AOP 前言   搜狐畅游笔试题中有一道问答题涉及到回答谈谈对Spring IOC与AOP的理解.特将相关内容进行整理.    ...

  8. 100个iOS开发面试题汇总

    100个iOS开发面试题汇总 关于iOS开发面试,不管对于招聘和应聘来说,面试都是很重要的一个环节,特别对于开发者来说,面试中的技术问题环节不仅是企业对应聘者技能和积累的考察,也是一个开发者自我检验的 ...

  9. 前端开发面试题总结之——JAVASCRIPT(三)

    ___________________________________________________________________________________ 相关知识点 数据类型.运算.对象 ...

随机推荐

  1. MySQL 基本信息的查询(初始化配置信息 my.ini)

    0. my.ini MySQL 的初始化配置信息 mysql 启动时会读取该配置文件,如果按照默认方式安装 mysql 的话,该配置文件在: C:\ProgramData\MySQL\MySQL Se ...

  2. openstack dnsmasq调试

  3. codeforces 402E - Strictly Positive Matrix【tarjan】

    首先认识一下01邻接矩阵k次幂的意义:经过k条边(x,y)之间的路径条数 所以可以把矩阵当成邻接矩阵,全是>0的话意味着两两之间都能相连,也就是整个都要在一个强连通分量里,所以直接tarjan染 ...

  4. P3564 [POI2014]BAR-Salad Bar

    传送门 我是来帮加藤大佬写题解的--全世界都没找到加藤大佬写法的说明--很难受-- 首先我们把\(p\)看成\(1\),\(j\)看成\(-1\),一个区间满足条件就意味着这个区间的所有前缀和都大于等 ...

  5. Android 性能优化(16)线程优化:Creating a Manager for Multiple Threads 如何创建一个线程池管理类

    Creating a Manager for Multiple Threads 1.You should also read Processes and Threads The previous le ...

  6. 基于Web的Kafka管理器工具之Kafka-manager的编译部署详细安装 (支持kafka0.8、0.9和0.10以后版本)(图文详解)(默认端口或任意自定义端口)

    不多说,直接上干货! 至于为什么,要写这篇博客以及安装Kafka-manager? 问题详情 无奈于,在kafka里没有一个较好自带的web ui.启动后无法观看,并且不友好.所以,需安装一个第三方的 ...

  7. 【转】HIVE UDF UDAF UDTF 区别 使用

    原博文出自于:http://blog.csdn.net/longzilong216/article/details/23921235(暂时) 感谢! 自己写代码时候的利用到的模板   UDF步骤: 1 ...

  8. hbase优化小结

    目录: 1,背景 2,GC 3,hbase cache 4,compaction 5,其他 1,背景 项目组中,hbase主要用来备份mysql数据库中的表.主要通过接入mysql binlog,经s ...

  9. SpringMVC中Controller类的方法返回String不跳转,而是将字符串显示到页面

    问题描述: 在spring中,控制层的注解一般都是使用@Controller,如果哪个请求参数需要返回数据的话,我们可以在该方法上配合@ResponseBody注解使用,这也是比较常见的方式了. 今天 ...

  10. HTML form without CSRF protection,HTML表单没有CSRF保护

    HTML form without CSRF protection =HTML表单没有CSRF保护 CSRF是伪造客户端请求的一种攻击,CSRF的英文全称是Cross Site Request For ...