1、Python中list、tuple、dict、set有什么区别,主要应用在什么样的场景?并用for语句分别进行遍历

定义:
list:链表,有序的项目, 通过索引进行查找,使用方括号”[]”;
tuple:元组,元组将多样的对象集合到一起,不能修改,通过索引进行查找, 使用括号”()”;
dict:字典,字典是一组键(key)和值(value)的组合,通过键(key)进行查找,没有顺序, 使用大括号”{}”;
set:集合,无序,元素只出现一次, 自动去重,使用”set([])”
应用场景:
list, 简单的数据集合,可以使用索引;
tuple, 把一些数据当做一个整体去使用,不能修改;
dict,使用键值和值进行关联的数据;
set,数据只出现一次,只关心数据是否出现, 不关心其位置; test_list = [1, 2, 3, 4, 4]
test_tuple = (1, 2, 3, 4, 5)
test_dict = {'a': 1, 'b': 2}
test_set = {12, 4, 5, 6}
for items in test_list:
print('list:', items)
for items in test_tuple:
print('tuple:', items) for key, value in test_dict.items():
print('dict:', key, value) for items in test_set:
print('set:', items)

答案

2、Python中静态函数、类函数、成员函数的区别?各写出一个实例。

class Animal(object):
planet = 'earth' def __init__(self,name):
self.name = name @staticmethod
def eat():
print("An animal is eating.....") @classmethod
def live_on(cls):
print("The Animal live on earth!") def print_name(self):
print('The name of animal is',self.name)
Cat = Animal('Cafe') Animal.eat()
Cat.eat() Animal.live_on()
Cat.live_on() Cat.print_name()

答案

3、用Python语言写一个函数,输入一个字符串,返回倒序排列的结果:如:string_reverse('abcdefg'),返回'gfedcba'

def string_reverse(input_str):
return input_str[::-1] print(string_reverse('nice'))

答案

4、介绍一下Python的异常处理机制和自己开发过程中的体会

python主要是用try except语句来捕获异常
使用raise来引发异常
使用try...finally来处理(无论是否发生异常)都要处理的内容
assert来触发断言异常 个人感悟:
1、触发异常,一定要带上完整的异常信息:raise MyException('Error message')
2、创建一个异常模块,创建一些异常基类和子类,触发不同的异常
3、除了特殊情况不要,捕捉所有的异常
4、减少try except中代码,只对出现异常的语句进行处理
5、捕捉异常尽量使用as语句

答案

5、jQuery中的$()是什么?网页上有5个<div>元素,如何使用jQuery来选择他们?

1、$()是一个标签选择器
2、$()可以是一个特定的DOM元素
3、$()是$(function)定义一个函数 $("div")

答案

6、写一个Bash Shell脚本来得到当前的日期、时间、用户名和当前文件目录

`date +%Y%m%d-%H-%M-%S`
`whoami`
`pwd`

答案

7、Django中使用memcached作为缓存的具体使用方法?优缺点说明?

1、在setting里配置cache
CACHE_BACKEND = 'memcached://127.0.0.1:11211/'
2、缓存的方法:
A.整个站点缓存:
django.middleware.cache.UpdateCacheMiddleware(放在最前)
django.middleware.cache.FetchFromCacheMiddleware(放在最后) B.视图函数装饰器缓存:
from django.views.decorators.cache import cache_page
@cache_page(60 * 15)
def my_view(request):
....
其中cache_page的参数为超时时间,单位为秒。
C.在函数中调用cache来缓存
from django.core.cache import cache
def heavy_view(request):
cache_key = 'my_heavy_view_cache_key'
cache_time = 1800 # time to live in seconds
result = cache.get(cache_key)
if not result:
result = # some calculations here
cache.set(cache_key, result, cache_time)
return result D.在url中配置缓存
urlpatterns = ('',
(r'^foo/(\d{1,2})/$', cache_page(60 * 15)(my_view)), memcached将数据放在内存中,无法持久化,数据库宕机会导致数据的丢失

答案

8、给定一个红包的数额属组gifts以及它的大小n,请返回是否有某个金额出现的次数超过总红包数的一半。若存在返回该红包金额,不存在请返回0

def select_most_often_gift(gifts):
gift_items = set(gifts)
n = len(gifts)
for gift in gift_items:
num = gifts.count(gift)
if num > n/2:
return gift
return 0 print(select_most_often_gift([2,3,6,2,24,5,56]))

答案

Python面试题(十一)的更多相关文章

  1. Python面试题 —— 获取列表中位数

    中位数是一个可将数值集合划分为相等的上下两部分的一个数值.如果列表数据的个数是奇数,则列表中间那个数据就是列表数据的中位数:如果列表数据的个数是偶数,则列表中间那2个数据的算术平均值就是列表数据的中位 ...

  2. python公司面试题集锦 python面试题大全

    问题一:以下的代码的输出将是什么? 说出你的答案并解释. class Parent(object): x = 1 class Child1(Parent): pass class Child2(Par ...

  3. 【python自动化第十一篇】

    [python自动化第十一篇:] 课程简介 gevent协程 select/poll/epoll/异步IO/事件驱动 RabbitMQ队列 上节课回顾 进程: 进程的诞生时为了处理多任务,资源的隔离, ...

  4. 【Python】【面试必看】Python笔试题

    前言 现在面试测试岗位,一般会要求熟悉一门语言(python/java),为了考验求职者的基本功,一般会出 2 个笔试题,这些题目一般不难,主要考察基本功.要是给你一台电脑,在编辑器里面边写边调试,没 ...

  5. python第三十一课--递归(2.遍历某个路径下面的所有内容)

    需求:遍历某个路径下面的所有内容(文件和目录,多层级的) import os #自定义函数(递归函数):遍历目录层级(多级) def printDirs(path): dirs=os.listdir( ...

  6. Python面试题整理-更新中

    几个链接: 编程零基础应当如何开始学习 Python ? - 路人甲的回答 网易云课堂上有哪些值得推荐的 Python 教程? - 路人甲的回答 怎么用最短时间高效而踏实地学习 Python? - 路 ...

  7. python 面试题4

    Python面试题 基础篇 分类: Python2014-08-08 13:15 2071人阅读 评论(0) 收藏 举报 最近,整理了一些python常见的面试题目,语言是一种工具,但是多角度的了解工 ...

  8. 一道Python面试题

    无意间,看到这么一道Python面试题:以下代码将输出什么? def testFun():    temp = [lambda x : i*x for i in range(4)]    return ...

  9. 孤荷凌寒自学python第八十一天学习爬取图片1

    孤荷凌寒自学python第八十一天学习爬取图片1 (完整学习过程屏幕记录视频地址在文末) 通过前面十天的学习,我已经基本了解了通过requests模块来与网站服务器进行交互的方法,也知道了Beauti ...

  10. 孤荷凌寒自学python第七十一天开始写Python的第一个爬虫

    孤荷凌寒自学python第七十一天开始写Python的第一个爬虫 (完整学习过程屏幕记录视频地址在文末) 在了解了requests模块和BeautifulSoup模块后,今天开始真正写一个自己的爬虫代 ...

随机推荐

  1. 代码审查工具Sonarqube安装

    前言:在项目开发当中,完成需求并上线是一件很开心的事情,但为了能按时上线功能不得不为了完成功能而写代码,写的时候觉得先把功能上了以后再回头优化此处代码,但真正上线之后你就会发现你再也不想去修改之前遗留 ...

  2. 解决msi文件在XP上安装未完成

    下载Ocra工具,然后删除"DIRCA_CheckFx"和"VSDCA_VsdLaunchConditions"这两个Action即可.第一步,下载并打开Ocr ...

  3. [javascript]Dom操作笔记

    1.为一个节点同时设置多个属性 $("div[aria-describedby='F53_batch_history']").attr({"display":& ...

  4. Jsonnet-PHP v1.3.0 发布,支持 PHP 7 使用 Jsonnet

    JsonNet-PHP 是 Google Jsonnet 对 PHP的支持扩展. pecl: http://pecl.php.net/package/jsonnet github: https://g ...

  5. Mysql之explain调优

    Explain调优 使用explain语法,对SQL进行解释,根据其结果进行调优: MySQL 表关联的算法是 Nest Loop Join,是通过驱动表的结果集作为循环基础数据,然后一条一条地通过该 ...

  6. 初学Laravel框架与ThinkPHP框架的不同

    作为一个PHP菜鸟初学Laravel框架 在学习过程中我发现了其与TP框架的不同点,由于时间问题和认识还不够完善我先写出其中几点,有错误的地方希望各位大牛斧正... 1.渲染模版方式的不同:在Lara ...

  7. jQuery-轮播图(友善滴滚动切换)

    线上实例:http://lgy.1zwq.com/slide/ [处理] 这里的图片滚动轮播,做了点小处理:当在第1页状态时,你点击第5页,图片的滚动是一张滑过,而不是从2-3-4-5(这种的多张滚动 ...

  8. Python 常用 PEP8 编码规范

    Python 常用 PEP8 编码规范 代码布局 缩进 每级缩进用4个空格. 括号中使用垂直隐式缩进或使用悬挂缩进. EXAMPLE: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 ...

  9. ansible入门二(Ansible常见模块介绍)

    本节内容: ansible命令基础 常见模块举例 一.ansible命令基础 语法: ansible <host-pattern> [-f forks] [-m module_name] ...

  10. Java进阶2 数组内存和对象的内存管理知识

    Java进阶2 数组内存和对象的内存管理知识 20131028 前言: 在面试的时候,如果是Java的编程语言,也许你认为没有什么可以问的,只能够说明你对于Java了解的太浅了,几乎就是两个星期的节奏 ...