1、一行代码实现1—100之和
print(sum(range(1, 101)))
2、如何在一个函数内部修改全局变量
利用global修改全局变量
3、列出5个python标准库
re:正则匹配
math:数学运算
sys:用于命令行参数
os:提供了与操作系统相关联的函数
datetime:处理日期与时间
4、字典如何删除键和合并两个字典
del dic["key"]
dic.update(dic2)
5、谈下python的GIL
6、python实现列表去重的方法
列表先转换成集合,然后再转回列表
7、fun(*args,**kwargs)中的*args,**kwargs什么意思?
8、python2和python3的range(100)的区别
python2返回列表,python3返回迭代器,节约内存
9、一句话解释什么样的语言能够用装饰器?
函数可以作为参数的语言能用装饰器
10、python内建数据类型有哪些
整型(int),字符型(str),布尔型(boolean),列表(list),元组(tuple),字典(dict),集合(set)
11、简述面向对象中__new__和__init__区别
12、简述with方法打开处理文件帮我我们做了什么?
13、列表[1,2,3,4,5],请使用map()函数输出[1,4,9,16,25],并使用列表推导式提取出大于10的数,最终输出[16,25]
14、python中生成随机整数、随机小数、0—1之间小数方法
随机整数:random.randint(a,b),生成区间内的整数
随机小数:习惯用numpy库,利用np.random.randn(5)生成5个随机小数
0-1随机小数:random.random(),括号中不传参
15、避免转义给字符串加哪个字母表示原始字符串?
16、
17、python中断言方法举例
18、数据表student有id,name,score,city字段,其中name中的名字可有重复,需要消除重复行,请写sql语句
select distinct name from student
19、10个Linux常用命令
cd. wget. yum. pip. mv. ln. pwd. touch. rm. mkdir. cat. more. grep.
20、python2和python3区别?列举5个
(1)Python2既可以使用括号也可以使用一个空格来区分打印内容,Python3使用print必须要以小括号包裹
(2)解析用户输入:python2是raw_input()函数,Python3是input()函数
(3)Python2中 range()函数返回列表,Python3中返回迭代器,节约内存
(4)Python2中使用ascii编码,Python3中使用utf-8编码
(5)Python2中Unicode表示字符串序列,str表示字节序列
Python3中str表示字符串序列,byte表示字节序列
(6)Python2为正常显示中文引入coding声明,Python3不需要
21、列出python中可变数据类型和不可变数据类型,并简述原理
可变类型:列表list、字典dict
如果改变了变量的值,相当于新建了一个对象,而对于相同的值得对象,在内存中则只有一个对象。
不可变类型:数值型、字符串string、元组tuple
22、s = “ajldjlajfdljfddd”,去重并从小到大排序输出”adfjl”
set去重,再转成list,sort方法排序,reverse = False是从小到大排
s = 'ajldjlajfdljfddd'
s = set(s)
s = list(s)
s.sort(reverse=False)
res = "".join(s)
print(res)
23、用lambda函数实现两个数相乘
mul = lambda i,j:i * j;
24、字典根据键从小到大排序dict={“name”:”zs”,”age”:18,”city”:”深圳”,”tel”:”1362626627”}
25、利用collections库的Counter方法统计字符串每个单词出现的次数”kjalfj;ldsjafl;hdsllfdhg;lahfbl;hl;ahlf;h”
26、字符串a = “not 404 found 张三 99 深圳”,每个词中间是空格,用正则过滤掉英文和数字,最终输出”张三 深圳”
27、filter方法求出列表所有奇数并构造新列表,a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
28、列表推导式求列表所有奇数并构造新列表,a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
29、正则re.complie作用
30、a=(1,)b=(1),c=(“1”) 分别是什么类型的数据?
a是tuple,b是int,c是str
31、两个列表[1,5,7,9]和[2,2,6,8]合并为[1,2,2,3,6,7,8,9]
list1 = [1,5,7,9]
list2 = [2,2,6,8]
list1.extend(list2)
print(list1)
list1.sort(reverse=False)
print(list1)
32、用python删除文件和用linux命令删除文件方法
python: os.remove()
linux:rm
33、log日志中,我们需要用时间戳记录error,warning等的发生时间,请用datetime模块打印当前时间戳 “2018-04-01 11:38:54”
34、数据库优化查询方法
外键、索引、联合查询、选择特定字段等
35、请列出你会的任意一种统计图(条形图、折线图等)绘制的开源库,第三方也行
36、写一段自定义异常代码
37、正则表达式匹配中,(.)和(.?)匹配区别?
38、简述Django的orm
39、[[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6]
40、x=”abc”,y=”def”,z=[“d”,”e”,”f”],分别求出x.join(y)和x.join(z)返回的结果
41、举例说明异常模块中try except else finally的相关意义
42、python中交换两个数值
43、举例说明zip()函数用法
44、a=”张明 98分”,用re.sub,将98替换为100
45、写5条常用sql语句
46、a=”hello”和b=”你好”编码成bytes类型
47、[1,2,3]+[4,5,6]的结果是多少?
[1, 2, 3, 4, 5, 6]
48、提高python运行效率的方法
49、简述mysql和redis区别
50、遇到bug如何处理
51、1、正则匹配,匹配日期2018-03-20
url=’https://sycm.taobao.com/bda/tradinganaly/overview/get_summary.json?dateRange=2018-03-20%7C2018-03-20&dateType=recent1&device=1&token=ff25b109b&_=1521595613462‘
52、list=[2,3,5,4,9,6],从小到大排序,不许用sort,输出[2,3,4,5,6,9]
53、写一个单例模式
54、保留两位小数
题目本身只有a=”%.03f”%1.3335,让计算a的结果,为了扩充保留小数的思路,提供round方法(数值,保留位数)
55、求三个方法打印结果
56、列出常见的状态码和意义
4
5
57、分别从前端、后端、数据库阐述web项目的性能优化
58、使用pop和del删除字典中的”name”字段,dic={“name”:”zs”,”age”:18}
59、列出常见MYSQL数据存储引擎
60、计算代码运行结果,zip函数历史文章已经说了,得出[(“a”,1),(“b”,2),(“c”,3),(“d”,4),(“e”,5)]
61、简述同源策略
62、简述cookie和session的区别
63、简述多线程、多进程
64、简述any()和all()方法
65、IOError、AttributeError、ImportError、IndentationError、IndexError、KeyError、SyntaxError、NameError分别代表什么异常
66、python中copy和deepcopy区别
67、列出几种魔法方法并简要介绍用途
68、C:\Users\ry-wu.junya\Desktop>python 1.py 22 33命令行启动程序并传参,print(sys.argv)会输出什么数据?
69、请将[i for i in range(3)]改成生成器
70、a = “ hehheh “,去除收尾空格
71、举例sort和sorted对列表排序,list=[0,-1,3,-10,5,9]
72、对list排序foo = [-5,8,0,4,9,-4,-20,-2,8,2,-4],使用lambda函数从小到大排序
73、使用lambda函数对list排序foo = [-5,8,0,4,9,-4,-20,-2,8,2,-4],输出结果为
[0,2,4,8,8,9,-2,-4,-4,-5,-20],正数从小到大,负数从大到小
74、列表嵌套字典的排序,分别根据年龄和姓名排序
75、列表嵌套元组,分别按字母和数字排序
76、列表嵌套列表排序,年龄数字相同怎么办?
77、根据键对字典排序(方法一,zip函数)
78、根据键对字典排序(方法二,不用zip)
79、列表推导式、字典推导式、生成器
80、最后出一道检验题目,根据字符串长度排序,看排序是否灵活运用
81、举例说明SQL注入和解决办法
82、s=”info:xiaoZhang 33 shandong”,用正则切分字符串输出[‘info’, ‘xiaoZhang’, ‘33’, ‘shandong’]
83、正则匹配以163.com结尾的邮箱
84、递归求和
85、python字典和json字符串相互转化方法
dic = json.load(str) # json变字典
str = json.dump(dic) # 字典变json
86、MyISAM 与 InnoDB 区别:
87、统计字符串中某字符出现次数
88、字符串转化大小写
str.upper()
str.lower()
89、用两种方法去空格
90、正则匹配不是以4和7结尾的手机号
1[34578][0-9]\d{7}[^$47]
91、简述python引用计数机制
92、int(“1.4”),int(1.4)输出结果?
前者是字符串,会报valueerror:invalid literal。 后者会强制转换为1。
93、列举3条以上PEP8编码规范
94、正则表达式匹配第一个URL
[a-zA-z]+://[^\s]*
95、正则匹配中文
[\u4e00-\u9fa5]
96、简述乐观锁和悲观锁
97、r、r+、rb、rb+文件打开模式区别
98、Linux命令重定向 > 和 >>
99、正则表达式匹配出 www.itcast.cn
100、python传参数是传值还是传址?
Python是不允许选择采用传值还是传址的。Python参数传递采用的是传对象引用的方式,实际上是传址和传值的综合。
如果函数收到的是一个可变对象(字典或列表)的引用,就能修改对象的原始值-相当于传址。
如果函数收到的是一个不可变对象(数字、字符或元组)的引用,就不能直接修改原始对象-相当于传值。
101、求两个列表的交集、差集、并集
print list(set(b).difference(set(a))) # b中有而a中没有的 差集
print list(set(a).union(set(b))) # 两个list并集
print list(set(a).intersection(set(b))) # 两个list交集
102、生成0-100的随机数
import random
random.randint(1,101)
103、lambda匿名函数好处
104、常见的网络传输协议
105、单引号、双引号、三引号用法
106、python垃圾回收机制
107、HTTP请求中get和post区别
108、python中读取Excel文件的方法
109、简述多线程、多进程
110、python正则中search和match