1、一行代码实现1~100之和
sum(range(1, 101))
2、如何在一个函数内部修改全部变量
'''global'''
name = "xue"
def test():
global name
name = "73"
print("after change: ", name)
test()
print("now name: ", name)
3、列出5个python标准库
sys、io、time、json、pickle、math...
4、字典如何删除键和合并两个字典
'''
del : 删除
update : 合并
'''
dic = {"name": "xue", "age": 23, 'sex': 'M'}
del dic["sex"]
print(dic)
dic2 = {'hobby': 'basketball'}
dic.update(dic2)
print(dic)
5、谈下python的GIL
6、python实现列表去重的方法
l = [1,1,1,1,2,2,2,2,3,3,5,5,7,5,3,4]
print(l)
l = list(set(l))
print(l)
7、fun(args,**kwargs)中的args,**kwargs什么意思?
*args : 接收N个位置参数,转换成元组
**kwargs : 接收N个关键字参数,转换成字典的形式
8、python2和python3的range(100)的区别
python2返回列表,python3返回迭代器,节约内存
9、一句话解释什么样的语言能够用装饰器?
能够把函数当作参数传递的语言
10、python内建数据类型有哪些
int、bool、str、list、tuple、dict
11、简述面向对象中__new__和__init__区别
12、简述with方法打开处理文件帮我们做了什么?
在处理完文件之后,会帮我们自动关闭文件
13、列表[1,2,3,4,5],请使用map()函数输出[1,4,9,16,25],并使用列表推导式提取出大于10的数,最终输出[16,25]
def pf(x):
return x**2
l = map(pf, [1,2,3,4,5])
print([i for i in l if i>=16])
14、python中生成随机整数、随机小数、0—1之间小数方法
import random
print(random.randint(1,3)) # [1,3]之间的随机整数
print(random.uniform(1,3)) # (1,3)之间的随机浮点数
print(random.random()) # [0,1)之间的随机浮点数
15、避免转义给字符串加哪个字母表示原始字符串?
r
16、< div class=“nam”>中国< /div>,用正则匹配出标签里面的内容(“中国”),其中class的类名是不确定的
import re
str = "
res = re.findall("
print(res)
17、python中断言方法举例
//assert()方法,断言成功,程序继续执行;断言失败,程序报错
class A(object):
def __init__(self, name):
self.name = name
a = A("xue")
assert type(a.name) is str
print(a.name)
18、数据表student有id,name,score,city字段,其中name中的名字可有重复,需要消除重复行,请写sql语句
select distinct name from student
19、10个Linux常用命令
cd ls rm mkdir cp pwd touch tree mv cat more grep echo
20、python2和python3区别?列举5个
1、python3使用print必须使用小括号包裹打印的内容;python2可以用小括号包裹,也可以用空格来分隔打印内容
2、python2中的range()方法返回的是列表,python3中返回的是迭代器,节约内存
3、python2中使用ASCLL编码,python3中使用UTF-8编码
4、python2中的输入内容的方法是raw_input(),python3中的是input()
5、python2中为正常显示中文,需要引入encoding声明,python3不用
21、列出python中可变数据类型和不可变数据类型,并简述原理
不可变类型:数值型、字符串型string和元组tuple
如果变量的值发生了变化,相当于新建了一个对象,而对于相同值的对象,在内存中只有一个地址
可变类型:列表list和字典dict
如果对对象进行了append、+=等这些操作之后,只是改变了变量的值,而不会新建一个对象,变量引用的对象的地址也不会变化,不过对于相同值的不同对象,在内存中则会存在不同的对象,即每个对象都有自己的地址
22、s = “ajldjlajfdljfddd”,去重并从小到大排序输出”adfjl”
s = 'ajldjlajfdljfddd'
j = set(s)
l = list(j)
l.sort(reverse=False) # sort()方法无返回值
print(''.join(l))
23、用lambda函数实现两个数相乘
sum = lambda a,b:a*b
print(sum(4,5))
24、字典根据键从小到大排序dict={“name”:”zs”,”age”:18,”city”:”深圳”,”tel”:”1362626627”}
dic = {"name": "zs", 'age': 18, 'city': "深圳", 'tel': "1362626627"}
print(dic.items())
l = sorted(dic.items(), key=lambda i:i[0], reverse=False)
print(l)
25、利用collections库的Counter方法统计字符串每个单词出现的次数”kjalfj;ldsjafl;hdsllfdhg;lahfbl;hl;ahlf;h”
from collections import Counter
a = 'kjalfj;ldsjafl;hdsllfdhg;lahfbl;hl;ahlf;h'
res = Counter(a)
print(res)
26、字符串a = “not 404 found 张三 99 深圳”,每个词中间是空格,用正则过滤掉英文和数字,最终输出”张三 深圳”
import re
a = "not 404 found 张三 99 深圳"
l = a.split()
print(l)
res = re.findall("\d+|[A-Za-z]+", a)
print(res)
for i in res:
if i in l:
l.remove(i)
new_str = " ".join(l)
print(new_str)
27、filter方法求出列表所有奇数并构造新列表,a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
'''
filter(function, iterable)
funtion: 判断函数
iterable: 可迭代对象
return: 迭代器对象
将可迭代对象的每个元素作为参数传递给函数,然后筛选出返回了True的元素
'''
def is_odd(n):