面试指南.md 960 B

面试指南

基础知识

  1. 下面的代码会输出什么。

       
    list1 = [1, 2, 3, 4]
       
    list2 = [i for i in list1 if i > 2]
    print(list2)
       
    list3 = [i for i in list1 if i % 2]
    print(list3)
       
    dict1 = {x: x ** 2 for x in (2, 4, 6)}
    print(dict1)
       
    dict2 = {x: f'item{x ** 2}' for x in (2, 4, 6)}
    print(dict2)
       
    set1 = {x for x in 'hello world' if x not in 'abcdefg'}
    print(len(set1))
    
  2. 下面的代码会输出什么。

        
    num = 100
        
        
    def foo():
        num = 200
        
        
    def bar():
        print(num)
        
        
    bar()
    foo()
    bar()
    
  3. 如何修改下面的Python代码,才能够输出“foo in father”?

       
    class Father(object):
       	
    	def foo(self):
    		print('foo in father.')
       
       
    class Son(object):
       	
    	def foo(self):
    		print('foo in son.')
       
       
    obj = Son()
    obj.foo()