VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > 简明python教程 >
  • 53道Python面试问答题,帮你成为大数据工程师!(2)

Audi(Car): pass audi = Audi() audi.drive()

41.如何从字符串中删除所有空格?

最简单的方法是在空白处分割字符串,然后重新连接而没有空格。

s = 'A string with white space'
''.join(s.split())
#=> 'Astringwithwhitespace'

42.为什么要在序列上迭代时使用enumerate()?

enumerate()允许在序列上进行迭代时跟踪索引。 它比定义和递增代表索引的整数更具Python感。

li = ['a','b','c','d','e']
for idx,val in enumerate(li): 
	print(idx, val)
#=> 0 a
#=> 1 b
#=> 2 c
#=> 3 d
#=> 4 e

43.pass,continue和break之间有什么区别?

通过意味着什么都不做。 我们之所以通常使用它,是因为Python不允许在其中没有代码的情况下创建类,函数或if语句。

在下面的示例中,如果i> 3中没有代码,则会引发错误,因此我们使用pass。

a = [1,2,3,4,5]
for i in a: 
	if i > 3
  	: pass 
  print(i)

#=> 1
#=> 2
#=> 3
#=> 4
#=> 5

继续继续到下一个元素,并暂停当前元素的执行。 因此对于i <3的值,永远不会达到print(i)。

for i in a: 
	if i < 3: 
  	continue 
	print(i)

#=> 3
#=> 4
#=> 5

break打破了循环,序列不再重复。 因此,不会打印3以后的元素。

for i in a: 
	if i == 3: 
  	break 
	print(i) 

#=> 1
#=> 2

44.将以下for循环转换为列表推导。

这个for循环。

a = [1,2,3,4,5] 
a2 = []
for i in a: 
	a2.append(i + 1)
	print(a2)

#=> [2, 3, 4, 5, 6]

成为。

a3 = [i+1 for i in a]
print(a3)

#=> [2, 3, 4, 5, 6]

列表理解通常被认为是更具Python性的,但仍易于阅读。

45.举例说明三元运算符。

三元运算符是单行if / else语句。

语法看起来像一个if条件else b。

x = 5
y = 10
'greater'  if x > 6 else 'less'
#=> 'less'

'greater' if y > 6 else 'less'
#=> 'greater'

46.检查字符串是否仅包含数字。

您可以使用isnumeric()。

'123a'.isnumeric()
#=> False

'123'.isnumeric()
#=> True

47.检查字符串是否仅包含字母。

您可以使用isalpha()。

'123a'.isalpha()
#=> False

'a'.isalpha()
#=> True

48.检查字符串是否仅包含数字和字母。

您可以使用isalnum()。

'123abc...'.isalnum()
#=> False

'123abc'.isalnum()
#=> True

49.从字典返回键列表。

这可以通过将字典传递给python的list()构造函数list()来完成。

d = {'id':7, 'name':'Shiba', 'color':'brown', 'speed':'very slow'}

list(d)
#=> ['id', 'name', 'color', 'speed']

50.如何对字符串进行大写和小写?

您可以使用upper()和lower()字符串方法。

small_word = 'potatocake'
big_word = 'FISHCAKE'

small_word.upper()
#=> 'POTATOCAKE'
big_word.lower()
#=> 'fishcake'

51. remove,del和pop有什么区别?

remove()删除第一个匹配值。

li = ['a','b','c','d']
li.remove('b')

li
#=> ['a', 'c', 'd']

del按索引删除元素。

li = ['a','b','c','d']
del li[0]

li
#=> ['b', 'c', 'd']

pop()按索引删除一个元素并返回该元素。

li = ['a','b','c','d']
li.pop(2)
#=> 'c'

li
#=> ['a', 'b', 'd']

#### 52.举一个字典理解的例子。

在下面,我们将创建字典,以字母作为键,并以字母索引作为值。

creating a list of letters

import string
list(string.ascii_lowercase)
alphabet = list(string.ascii_lowercase)

list comprehensiond = {val:idx for idx,val in enumerate(alphabet)}

d

=> {'a': 0,

=> 'b': 1,

=> 'c': 2,

=> ...

=> 'x': 23,

=> 'y': 24,

=> 'z': 25}

#### 53.如何在Python中执行异常处理?

Python提供了3个单词来处理异常,请尝试使用" except"" finally"。

语法如下所示。

try:

try to do this

except:

if try block fails then do this

finally:

always do this

在下面的简单示例中,try块失败,因为我们无法在字符串中添加整数。 else块设置val = 10,然后finally块打印完成。

try:
val = 1 + 'A'
except:
val = 10
finally:
print('complete')

print(val)

=> complete

=> 10

#### 结论

您永远不会知道面试中会遇到什么问题,最好的准备方法是拥有大量编写代码的经验。

就是说,此列表应涵盖您需要以python方式查询数据科学家或初级/中级python开发人员角色的所有内容。

我希望对您有帮助。


(本文翻译自Chris的文章《53 Python Interview Questions and Answers》,参考:https://towardsdatascience.com/53-python-interview-questions-and-answers-91fa311eec3f)
> 文源网络,仅供学习之用,侵删。
> 
> 在学习Python的道路上肯定会遇见困难,别慌,我这里有一套学习资料,包含40+本电子书,800+个教学视频,涉及Python基础、爬虫、框架、数据分析、机器学习等,不怕你学不会!
> https://shimo.im/docs/JWCghr8prjCVCxxK/ 《Python学习资料》
>
> 关注公众号【Python圈子】,优质文章每日送达。
> 
> ![file](https://img2020.cnblogs.com/other/1967716/202004/1967716-20200424143028932-834829331.jpg)

相关教程