ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

(一) Python常见面试题(1)

2021-02-25 06:01:05  阅读:106  来源: 互联网

标签:11 面试题 name Python age 常见 list 列表 print


1、 大数据文件的读取

with open ('muster.text', 'r') as f:

  lines = f.readlines() //逐行读取

  for line in lines  //for循环遍历

 

2、 列举布尔值为false的常见值?

0, [], (), {}, ' ', False, None

 

3、is 和 ==的区别

is比较的是 id

== 比较的是值

 

4、请按照字典dic1中的value值进行排序

dic1 = {'a' :24, 'b' :52, 'i' :33, 'k' :7}

dic2 = sorted(dic1.items(), key=lambda x:x[1]) 

print(dic2)

>>> 

[('k', 7), ('a', 24), ('i', 33), ('b', 52)]

 

类似的例子:请按照数组Demos中每个数组的二个元素排序, 逆序

Demos = [[6, 10, 3],[ 1, 2, 8], [6, 12, 2], [9, 11, 5]]

Demos.sort(key = lambda Demo: Demo[1], reverse = True)  // 或者写成:Demos2 = sorted[Demos, key=lambda x:x[1], ]

print(Demos)

>>> 

[[6, 12, 2], [9, 11, 5], [6, 10, 3], [1, 2, 8]]

 

按照age排序

list1 = [{'name':'a', 'age':20},{'name':'b', 'age':15},{'name':'c', 'age':32}]

list2 = sorted(list1, key = lambda x:x['age'],reverse = False)

print(list2)

>>>

[{'age': 15, 'name': 'b'}, {'age': 20, 'name': 'a'}, {'age': 32, 'name': 'c'}]

 

* sort() 和 sorted() 区别:

list.sort() 是将原来的列表排序,所以它是对原来的列表进行的操作,不会产生一个新列表

sorted(list), 是Python内置函数,该函数对原列表不会产生影响,只是在原来列表的基础上,产生一个有序的新列表,可以复制一个列表名

 

5、请反转字符串 "abcdef"

print("abcdef"[::-1])

>>>

fedcba

 

6、map(function, seq)

map()接受两个参数,一个是函数,一个是序列。函数应用于序列中每一个可迭代的项,返回的是一个结果list

例子:

list(map(lambda x,y:x+y,[1,3,5,7,9],[2,4,6,8,10]))

>>>

[3, 7, 11, 15, 19]

 

list(map(str,[1,2,3,4,5,6,7,8])) //这里的str是一个函数

>>>

[‘1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’]

 

7、下面代码输出结果是什么?

list = [6, 10, 3, 1, 2, 8, 12, 2, 9, 11, 5]

print(list[3:])

print(list[11:])

>>>

[1, 2, 8, 12, 2, 9, 11, 5] //list[3:]: 列表中索引3以后的元素,包括3

[] //不会出现IndexError报错

 

8. 写一个列表生成式(List Comprehension),产生一个公差为11的等差数列

print[x*11 for x in range(10)]

 

9、常用的字符串格式化有哪几种?

  - 占位符(placeholder)

  name = "Lina"

  s1 = "Hello, %s!" %name

  print(s1)

  >>>

  Hello, Lina!

  - format()

  s2 = "Hello, {}!".format(name)

  - f-string

  s3 = f'Hello, {name}' 

 

10、 给出两个列表,怎么找出他们相同的元素和不同的元素  

list1 = [1, 2, 3]

list2 = [3, 4, 5]

set1 = set(list1)

set2 = set(list2)

print(set1&set2)

print(set1^set2)

>>>

set([3])

set([1, 2, 4, 5])

 

11、请写出一段python代码实现删除一个list里面重复的元素

l1 = ["a", "m", "n", "d", "f", "m"]

l2 = list(set(l1))

 

12、列举字符串,列表,元组,字典每个常用的五个方法

* 字符串:

   - replace(old new) 替换

   - strip()  方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列

   - split()  通过指定分隔符对字符串进行切片

   - reverse

   - upper() 方法将字符串中的小写字母转为大写字母。

   - lower 

   - join

  例如 ','.join('abc')

  上面代码的含义是“将字符串abc中的每个成员以字符','分隔开再拼接成一个字符串”,输出结果为:'a,b,c'

      例如 数组中

  ';'.join([a,b,c]) 

  >> 'a;b;c'

 

 *  列表:append, pop(index), insert, remove, sort, count, index

  

 

 *  元组

tup = ('physics', 'chemistry', 1997, 2000)

tup[0]: physics

元组中的值是不允许修改和删除的,可以通过"+"连接两个元组,通过del删除整个元组:

del tup

(1, 2, 3) + (4, 5, 6)  ->  (1, 2, 3, 4, 5, 6)

('Hi!',) * 4  ->  ('Hi!', 'Hi!', 'Hi!', 'Hi!')

max(), min()  返回元组中元素最大值/最小值

len(tup) 计算元组元素个数

count() 方法用于统计某个元素在元祖中出现的次数

 

 *  字典

 

标签:11,面试题,name,Python,age,常见,list,列表,print
来源: https://www.cnblogs.com/qitanzhideyu/p/14444858.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有