10个python常见面试题,你能答对几个?

在这里插入图片描述

10个python常见面试题,你能答对几个?

  1. Python中’yield’关键字的目的是什么?提供一个例子。

    • 目的:'yield’关键字用于定义一个生成器,允许使用’for’循环进行迭代。当遇到’yield’关键字时,函数会保存当前状态并返回一个值给调用者。下次函数被调用时,会从上次离开的地方恢复执行。
    • 示例代码:
      def squares(n):
          for i in range(n):
              yield i**2
      for square in squares(5):
          print(square)  # 输出:0, 1, 4, 9, 16
      
  2. Python中列表推导式和生成器表达式的区别是什么?分别提供一个例子。

    • 区别:列表推导式创建一个新列表,而生成器表达式创建一个生成器对象,按需生成值。
    • 示例代码:
      numbers = [1, 2, 3, 4, 5]
      squared_numbers = [x**2 for x in numbers]  # 列表推导式
      squared_numbers_gen = (x**2 for x in numbers)  # 生成器表达式
      
  3. 在Python中,如何计算一个元素在列表中出现的次数?

    • 方法:使用count()方法。
    • 示例代码:
      lst = [1, 2, 3, 3, 4, 4, 4, 5]
      count_4 = lst.count(4)
      print(count_4)  # 输出:3
      
  4. 在Python中,如何从字符串中移除所有空白?

    • 方法:使用replace()方法。
    • 示例代码:
      s = " hello world "
      no_whitespace_s = s.replace(" ", "")
      print(no_whitespace_s)  # 输出:"helloworld"
      
  5. 如何在Python中获取当前工作目录?

    • 方法:使用os.getcwd()函数。
    • 示例代码:
      import os
      cwd = os.getcwd()
      print(cwd)
      
  6. 如何在Python中展平一个嵌套列表?

    • 方法:使用列表推导式。
    • 示例代码:
      nested_lst = [[1, 2, 3], [4, 5], [6, 7, 8, 9]]
      flattened_lst = [item for sublist in nested_lst for item in sublist]
      print(flattened_lst)  # 输出:[1, 2, 3, 4, 5, 6, 7, 8, 9]
      
  7. 如何在Python中检查一个数字是否为质数?

    • 方法:编写一个函数,检查数字是否能被2到其平方根之间的任何数字整除。
    • 示例代码:
      def is_prime(num):
          if num < 2:
              return False
          for i in range(2, int(num ** 0.5) + 1):
              if num % i == 0:
                  return False
          return True
      print(is_prime(7))  # True
      print(is_prime(12))  # False
      
  8. 如何在Python中将字符串转换为datetime对象?

    • 方法:使用datetime.strptime()函数。
    • 示例代码:
      from datetime import datetime
      date_str = "2023-05-12"
      date_obj = datetime.strptime(date_str, "%Y-%m-%d")
      print(date_obj)  # 输出:2023-05-12 00:00:00
      
  9. 如何在Python中合并两个字典?

    • 方法:使用字典解包。
    • 示例代码:
      dict1 = {'a': 1, 'b': 2}
      dict2 = {'c': 3, 'd': 4}
      merged_dict = {**dict1, **dict2}
      print(merged_dict)  # 输出:{'a': 1, 'b': 2, 'c': 3, 'd': 4}
      
  10. 如何在Python中从列表中移除重复项?

    • 方法:将列表转换为集合,然后转换回列表。
    • 示例代码:
      lst = [1, 2, 3, 3, 4, 4, 5]
      unique_lst = list(set(lst))
      print(unique_lst)  # 输出:[1, 2, 3, 4, 5]
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老猿讲编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值