Python面试必备

  • Python的基本数据类型有哪些?

1.字符串(String)   2.集合(set)   3.元组(Tuple)    4.列表(List)    5.字典(Dictionary)    6.数字(Number)

其中不可变的数据类型:字符串、元组、数字。不可变类型指的是在重新赋值的时候重新创建一个不可变类型,并将原来的变量指向新的内存空间,而原来的不可变类型则会 被内存回收站收回。

可变数据类型:列表、字典、集合

  • 字符串都有哪些常用的方法?

字符串的拼接:   "abc"+"cd"

字符串的格式化:

           1."%s"%var    字符串    %d  整数     %f  浮点数

           2."{0}{1}".format(name,age)   括号中的数字按照使用的顺序写好

字符串的截取:str.strip("|")   返回截取后的字符串

字符串的分割: str.split(‘ ’)  分割字符串中的空格返回列表

  • 列表都有哪些常用的方法 ?

alist = [‘x’,'y','z']

增加:alist.insert(index,'a')第一个参数是 插入的下标,第二个参数是要插入的元素

            alist.appent()  列表追加   ;  alist.extend(a)列表的合并

删除 :alist.remove('x')  删除列表中x 的元素

修改:alist[0] = 'h'

查询: alist[0]  

  • 列表的切片和列表表达式?

alist[0:2,1]   第一个参数表示列表的起始下标,第二个参数表示列表的截止下标。第三个参数表示每次切的步长。

a = eval("['a','b']")     # 将字符串当表达式求值,得到列表

  • 元组有哪些方法?

元组元素不可变,只有count和index两个方法

atuple = (1,2,3,4)

atuple.index(2)  返回元素2 的下标

atuple.count(2)  返回元素2 在元组中共有几个

del atuple   删除atuple元组的内存地址和变量的指向

  • 元组和列表的区别?

1.元组由小括号组成,列表由中括号组成

2.元组的元素不可变,而列表的元素可以被修改。这就导致了元组的方法只能查询和删除

  • 字典都有哪些方法 ?

tmp_dict= {'age':18,'name':'Jack'}          a = {'age':18,'school':'xian'}

字典由 一对大括号组成,是可变的数据类型

增加: tmp_dict['school']='清华'  ;tmp_dict().update(a)       两个字典合并,且会将重复的元素去掉

删除:   tmp_dict.clear()  删除全部字典 ;tmp_dict.pop('school')   删除指定key,并返回对应的value 值。

修改:修改和增加类似tmp_dict['school']='北大'

查询:tmp_dict.keys() 查询字典中所有的key值并返回一个列表。

          tmp_dict.values() 查询字典中所有的值并返回一个列表。

          tmp_dict.has_key(key) 判断key是否存在,存在为True,否则为False.

          tmp_dict.get(key,None) 获取字典中的value值,如果不存在则默认置为None。

          tmp_dict.setdefault(key,default=None) 和set()方法相似,如果不存在key,由tmp_dict[key]=default赋值

字典和json字符串的转换

import  json         json.dumps(tmp_dict)           json,load(str)

  • Python中的深拷贝 和 浅拷贝分别是 什么?

import copy

a  = [1,2,4,5]

b = copy.copy(a)   浅拷贝只是内存地址的拷贝,另外一个变量改变的时候也会引起当前变量的变化

c=copy.deepcopy(a) 深拷贝是在内存地址中新开辟 一个内存空间,仅仅是值相同而已,且改变另外一个对象该对象不会发生变化。

  • Python都有哪些 常见的异常和错误?

indexerror  列表中常见;    valueerror和keyerror 字典中比较常见    nameerror   Typeerror

standarderror标准错误如果不知道捕获错误就使用standarderror。

  • Python中常用的模块和方法?

内置模块: os,sys,time,shutil,glob,random,json,math,gzip,uuid,copy,multiprocessing,requests,threading,re

第三方模块: xlwt,xlrd,scapy,numpy

  • Python中静态方法和类方法分别是什么有什么区别?
  • Python中线程怎么创建和使用?

import threading

thread = threading.Thread(target=func)

thread.start()

线程池的创建和使用:

create_pool =  ThreadPool(len(vendors))

create_pool.apply_async()       create_pool.close()    create_pool.close()

  • Python中的进程怎么创建和如何使用,子进程的使用方法?
  • Python中的协程是什么?和多线程多进程有什么区别?
  • Python中正则表达式怎么使用?有哪些常用的方法 ?

 http://funhacks.net/2016/12/27/regular_expression/

     \d  数字     \D  非数字      \s  空白字符   \S非空白字符   \w  单词字符    \W 非单词字符  

       [… ] 匹配字符集  \表示转义字符   .匹配任意字符(换行符除外)+表示至少匹配一次  *表示匹配任意多次包括0次

      import re  

      pattern = re.compile (r'\d+')  函数用于编译正则表达式,生成一个pattern对象

      pattern.match('123456')    

  • Python中的闭包是什么?如何理解装饰器?
  • Mysql的分页查询offset?      数据库MySQL分页查询思路

{

"page":1,

"pageSize":10,

"searchCommonType":"exec_task_name",

"searchContent":"dns",

"searchTestScene":"basic_performance_assessment",

"searchStatus":"ALL",

"taskType":"single"

}

 1.前台传入不同的标志参数,根据不同的参数来查询数据库

 2.根据筛选条件查询数据库;如果有输入查询的内容则进行模糊查询like();对查出来的数据进行降序排序order_by(CaseExecTask.exec_begin_time.desc())

    设置最大数目limit(page_size);偏移量offset((args['page']-1)*args['page_size'])。并计算查询出来的数量count

  

SELECT * FROM seckill LIMIT 2 OFFSET 1; 

SELECT * FROM seckill LIMIT 2,1;

前者表示跳过一条数据,读取两条数据 

后者表示跳过两条数据,读取一条数据

 

 3.返回给前台查询结果的数量;页数大小默认是10;通过查询结果的数量和页数大小来计算多少页(page)

 4.遍历查询到的结果返回给前台(注意开始时间和结束时间有可能为空)

  • MySql的事件都有哪些?
  • ORM?
  • Redis?

 https://www.jianshu.com/p/2639549bedc8

 https://blog.csdn.net/middleware2018/article/details/80355418

字符串的设置:  redis.set(name=key,value=str)

字符串的查询:  redis.get(key)

字典hash的设置:redis.hset(name,key, value)

字典hash的查询:redis.hget(name,key)

  • Linux都有哪些常用的命令?

 ls pwd echo tailf screen scp   cp  mv awk sed cut find  ps vi

           scp -r [email protected]:root/CloudExploreOrm D:\work

  • Python的框架Flask一般都用过哪些?
  • 实际项目中遇到什么问题,是如何处理的?
发布了3 篇原创文章 · 获赞 4 · 访问量 48

猜你喜欢

转载自blog.csdn.net/Lb_fly0505/article/details/93324184