1. 试列出至少三种目前流行的大型关系数据库的名称
mysql oracle sqlserver
2. 有表list,共有字段ABC类型都是整数,表中有如下记录:
A B C 2 7 9 5 6 4 3 11 9
现在对该表依次完成以下操作:
(1) 查询出B、C列的值,要求按B列升序排序:
select B,C from list order by B asc;
(2) 写一条新的纪录,值为 7 8 9
inset into list(A,B,C) values(7,8,9);
(3) 查询C列,要求清除重复的值,按降序排列:
select C from test group by C desc;
3. 视图的作用:
4. 列举用过的python网络爬虫所用到的网络数据包
5. 列举用过的python网络爬虫所用到的解析数据包
6. python中的编码方式
7. python3.5语言中enumerate的意思
对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值
8. (99) 的八进制表示是
8 99 8 12 3 8 1 4 0 1 结果为143
9. 请列出三种常用的排序算法
10. 列出 python 中比较熟知的爬虫架构是______________.
11. 用 4,9,2,7 四个数字,可以使用+,-,*和/号,每个数字只使用 1 次,而且必须使
用 1 次,使表达式的结果是 24,表达式是_______.
12. 写出网络爬取过程中,遇到防爬问题的解决办法
13. for i in range(5,0,-1):print(i) 写出打印结果:
5 4 3 2 1
14. 获取 list 的元素个数,和向末尾追加元素所用的方法是____,____.
len append
15. 判断 dict 有没有某个 key 用的方法是( )
get()
16. L=range(100) 取第一到第三个元素用( ),取倒数第二个 元素用( ), 取后十个用( )
list(li[1:4]) list(li[-3:-2]) list(li[-10:])
17. 把 L 复制给 L1 用( )。注意:非引用传递
import copy L1 = copy.deepcopy(L)
18. d = {‘a’:1,’b’:2,’c’:3} 请打印出 key,value 值
d = {'a':1,'b':2,'c':3} for a in d.items(): print(a)
19. 如何判断一个变量是不是字符串
li = "" print(isinstance(li,str))
20. list 和 tuple 和 dict 各自特点
tuple 元祖 固定长度不可变的顺序容器,访问效率高,适合存储一些常量数据,可以作为字典的键使用 list 列表 是长度可变有序的数据存储容器,可以通过下标索引取到相应的数据 dict 字典 长度可变的hash字典容器,存储的方式为键值对,可以通过相应的键获取相应的值,key支持多种类型
21. xrange 和 range 有什么不同
range生成的结果是一个列表,当生成一个很大的序列时会占用很大的内存空间 而xrange生成的结果则是一个生成器,当生成一个很大的序列时,性能会比range优很多
22. ‘1,2,3’如何变成[‘1’,’2’,’3’] [‘1’,’2’,’3’]如何变成[1,2,3] ?
obj = "1,2,3".split(",") xx = [int(i) for i in obj]
23. def add_end(L=[]):
L.append(‘END’)
return L
add_end() 输出什么?
add_end() 再次调用输出什么?为什么?
['END'] ['END'] ['END'], 因为在第一次调用的时候L就已经生成,在内存中类似于全局变量,第二次调用的时候会在第一次调用的基础上进行添加(默认参数必须指向不变的对象)
24. [34,5,12,9,21]怎么排序
sorted()
25. def func(a,b,c = 0,*args,**kw):
pass
*args,**kw 的作用是什么?
*args接收位置参数,**kw接收关键字传参
26. is 和 == 的区别是什么
is是对比地址 ==是对比值
27. 如何生成[1,4,9,16,25,36,64,81,100]尽量用一行实现
obj = [i**2 for i in range(11)]
28. 生成器是什么?有什么用?请写一个生成器
可以理解为一种数据类型,这种数据类型自动实现了迭代器协议(其他的数据类型需要调用自己内置的__iter__方法),所以生成器就是可迭代对象 def test(): print("one") yield 1
29. map(str,[1,2,3,4,5,6,7,8,9])输出什么
#map函数是对一个序列的每个项依次执行函数 输出是一个map对象 加上list() 会输出['1', '2', '3', '4', '5', '6', '7', '8', '9']
30. 已知 x=43,ch=‘A’,y=1,则表达式(x>=y and ch<‘B’and y )?
31. python 支持的数据类型有
Number(数字) String(字符串) List(列表) Tuple(元组) Sets(集合) Dictionary(字典)
32. 请把一下函数转化成 python 的 lamabda 匿名函数:
def add(x,y):
return x+y
lamabda:x,y:x+y
33.
class A(object):
def foo(self,x):
print('executing foo(%s,%s)'%(self,x))
@classmethod
def class_foo(cls,x):
print('executing foo(%s,%s)' % (cls, x))
@staticmethod
def static_foo(x):
print('executing foo(%s)' %x)
a = A()
#调用 foo 函数,参数传入 1_________________________________.
a.foo(1)
#调用 class_foo 函数,参数传入 1___________________________.
A.class_foo(1)
#调用 static_foo 函数,参数传入 1___________________________.
a.static_foo(1)
34. python 如何实现单例模式?
class Dog(object): _instance = None _init_flag = False def __new__(cls, *args , **kwargs): #cls指向Dog if cls._instance == None: cls._instance = object.__new__(cls) return cls._instance else: return cls._instance def __init__(self,name): if Dog._init_flag == False: self.name = name Dog._init_flag = True a = Dog("旺财") print(a.name) b = Dog("啸天犬") print(b.name)
35. 什么是 lambda 函数?
36. 请写出一段 python 代码实现删除一个 list 里面的重复元素
list(set(li))
37. 如何用 python 删除一个文件
os.remove()
38. python 里面如何生成随机数
random.randrange()
39. 在 Python 中,如何抛出,捕获,处理异常
raise Exception("抛出一个异常") try: pass except Exception as e: print(e)
40. 输入一个字符串,返回倒序排列结果:如‘abcdef’,返回‘fedcba’
l = "abcde" print(l[::-1])
41. 请用自己的算法,按升序合并如下两个 list,并出去重复元素。 list1 = [2,3,8,4,9,5,6],list2=[5,6,10,17,11,2]
print(list(set(list1 + list2)))
42. python 中,元祖和列表的主要区别是
tuple 元祖 固定长度不可变的顺序容器 list 列表 是长度可变有序的数据存储容器
43. 排好序的列表 alist 和字符 char1,表示 alist 中存在 char1 则返回 False,不存 在则返回 True 的表达式是
li = ["alex","egon"] print(True if "alex" in li else False)
44. 列表变量 alist,将 alist 中的最大值和最小值分别赋值给 maxValue 和 minValue 的表达式是
alist = [1,2,3,4,5] maxValue,minValue = (max(alist),min(alist))
45. 列表 alist = [{“a”:5,”b”:2},{“a”:2,”b”:8},{“a”:8,”b”:2}]请写出以键 a 的值对 alist 进行排序的表达式是
sorted(alist,key=lambda x:x['a'])
46. 求列表 alist 和 blist 交际的表达式是
47. 不依赖中间变量,交换变量 a 和 b 的值得表达式是
48. 现有列表 alist = [3,1,-4,-2],按照元素的绝对值大小进行排序的表达式是
sorted(alist,key=lambda x:abs(x))
49. 下面代码输出的结果是
my_dict = {'a':0,'b':1}
def func(d):
d['a'] = 1
return d
func(my_dict)
my_dict['c'] = 2
print(my_dict)
{'a': 1, 'b': 1, 'c': 2}
1. li = [1,2,3,11,22,33,555,666,777]
要求: {1: [1, 2, 3], 2: [11, 22, 33], 3: [555, 666, 777]}
{ i:[ k for k in li if len(str(k)) == i] for i in [len(str(i)) for i in li]}
2. 输出 [[0, 0, 0, 0, 0], [0, 1, 2, 3, 4], [0, 2, 4, 6, 8], [0, 3, 6, 9, 12]]
r = (4, 5) ret = [[x*i for i in range(0, r[1])] for x in range(0, r[0])]
3. [{'name':'zs','age':32},{'name':'ls','age':35}] 这样一个数据结构,取出name为zs的年龄
print([i['age'] for i in s if i['name']=='zs'])
http://www.cnblogs.com/tom-gao/p/6645859.html