返回顶部
首页 > 资讯 > 后端开发 > Python >哦?原来Python 面试题是这样的,P
  • 765
分享到

哦?原来Python 面试题是这样的,P

是这样面试题Python 2023-01-31 00:01:35 765人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

本面试题题库,由公号:非本科程序员 整理发布 第1题:是否遇到过python的模块间循环引用的问题,如何避免它? 这是代码结构设计的问题,模块依赖和类依赖 如果老是觉得碰到循环引用可能的原因有几点: 可能是模块的分界线划错地方了 可

面试题题库,由公号:非本科程序员 整理发布

第1题:是否遇到过python的模块间循环引用的问题,如何避免它?

这是代码结构设计的问题,模块依赖和类依赖

如果老是觉得碰到循环引用可能的原因有几点:

  1. 可能是模块的分界线划错地方了
  2. 可能是把应该在一起的东西硬拆开了
  3. 可能是某些职责放错地方了
  4. 可能是应该抽象的东西没抽象

总之微观代码规范可能并不能帮到太多,重要的是更宏观的划分模块的经验技巧,推荐uml,脑图,白板等等图形化的工具先梳理清楚整个系统的总体结构和职责分工

采取办法,从设计模式上来规避这个问题,比如:

  1. 使用 “__all__” 白名单开放接口
  2. 尽量避免 import

第2题:简单介绍一下Python函数式编程

在函数式编程中,函数是基本单位,变量只是一个名称,而不是一个存储单元。

除了匿名函数外,Python还使用fliter(),map(),reduce(),apply()函数来支持函数式编程。
所以你的重点围绕fliter(),map(),reduce().apply()来介绍就可以顺利和面试官达成一致

第3题:python中函数装饰器有什么作用?

装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。

它经常用于有切面需求的场景,比如:
插入日志性能测试事务处理缓存权限校验等场景。

有了装饰器,就可以抽离出大量与函数功能本身无关的雷同代码并继续重用。

第4题: 按照要求完成编码?

写一个函数,将两个dict(key是数字,value是string)进行合并,函数返回合并后的dict。
规则如下:如果一个key仅仅存在于其中一个dict中,则直接加入合并后的dict;
如果一个key在两个dict中都存在,那么给定一个choice值,choice可以是任何string,如果choice是任一个dict中的value,则写入,否则不写入。

代码如下

def function(lefdict,rightdict,choice):
    samelist=lefdict.keys() & rightdict.keys()  # dict.keys()返回的是一个可迭代对象,取两个dict的keys的交集
    diflist = lefdict.keys() ^ rightdict.keys() # 取两个dict的keys的不同集
    newdict={}
    for key,value in lefdict.items():
        if key in diflist:
            newdict[key]=value
        elif key in samelist:
            if value==choice:
                newdict[key]=value
    for key,value in rightdict.items():
        if key in diflist:
            newdict[key]=value
        elif key in samelist:
            if value==choice:
                newdict[key]=value
    print(samelist,diflist)
    print(newdict)
    return newdict



function({1:'a',2:'b',3:'c'},{4:'f',2:'b',3:'d'},'b')

第5题:按照要求完成编码?

把一个字符串的尾字母移到首位,比如‘abcde’->‘eabcd’,称为一次字符串的旋转。如果字符串1的任何一次旋转可以包含字符串2,则返回true,否则返回false,请写一个函数实现。

代码如下

def function(str1, str2):
    str1 = str1[-1] + str1[:-1]
    print(str1)
    if str1.find(str2) != -1:
        return True
    else:
        return False


print(function("abcde", "cde"))

第6题:关注题,最近在公号更新一个神奇的系列入门文章

更多内容,欢迎关注 https://dwz.cn/r4lCXEuL

在这里插入图片描述

--结束END--

本文标题: 哦?原来Python 面试题是这样的,P

本文链接: https://lsjlt.com/news/182462.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 哦?原来Python 面试题是这样的,P
    本面试题题库,由公号:非本科程序员 整理发布 第1题:是否遇到过python的模块间循环引用的问题,如何避免它 这是代码结构设计的问题,模块依赖和类依赖 如果老是觉得碰到循环引用可能的原因有几点: 可能是模块的分界线划错地方了 可能...
    99+
    2023-01-31
    是这样 面试题 Python
  • 五一4天就背这些Python面试题了,P
    第1题: Python 中的 os 模块常见方法? os 属于 python内置模块,所以细节在官网有详细的说明,本道面试题考察的是基础能力了,所以把你知道的都告诉面试官吧 官网地址 https://docs.python.org/3/l...
    99+
    2023-01-31
    面试题 天就背 Python
  • Django的开发步骤原来是这样的
    Django 是一个开放源代码的 Web 应用框架,由 Python 写成。 开发步骤如下: 1. 安装Django pip install django 2. ...
    99+
    2024-04-02
  • python的多线程原来可以这样解
    目录多线程创建线程总结多线程 多线程类似于同时执行多个不同程序,多线程运行有如下优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理。用户界面可以更加吸引人,比如用户点击了一...
    99+
    2024-04-02
  • ASP面试又来了!这次考察的是索引的原理与应用!
    在数据库中,索引是一种重要的数据结构,它可以提高数据库查询的效率。索引的原理是将数据按照一定的规则进行排序,然后将排序后的数据存储在索引表中,查询时可以通过索引表快速定位到所需数据的位置,从而提高查询效率。 在ASP中,索引同样是非常重要...
    99+
    2023-06-08
    面试 索引 编程算法
  • 面试JavaScript的题目是怎样的
    面试JavaScript的题目是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。  1、怎样添加、移除、移动、复制、创建和查找节点  ...
    99+
    2024-04-02
  • Python的索引与切片原来该这样理解
    目录1. 普通索引:取一个元素1.1 正索引1.2 负索引2 切片索引:取多个元素2.1 切片索引中[0]可以省略不写:2.2 切片索引中最后一位可以不写:2.3 列表、元组和字符串...
    99+
    2024-04-02
  • 你是否知道这些Python和Git面试问题的答案?
    Python和Git是现代开发中最常用的工具之一,因此在技术面试中,面试官通常会问一些相关问题。这篇文章将介绍一些常见的Python和Git面试问题,并提供相应的答案和演示代码。 Python面试问题 Python的GIL是什么?它对Py...
    99+
    2023-08-03
    numy git 面试
  • MySQL高频面试题都是怎么样的
    本篇文章给大家分享的是有关MySQL高频面试题都是怎么样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。唯一索引比普通索引快吗, 为什么?唯一...
    99+
    2024-04-02
  • vue父子组件进行通信方式原来是这样的
    目录一、props二、细节三props大小写命名三、非props的attributes属性四、子组件传递给父组件五、简单例子总结在vue中如何实现父子组件通信,本篇博客将会详细介绍父...
    99+
    2024-04-02
  • 容易被忽视Node.js 面试题都是怎样的
    本篇文章给大家分享的是有关容易被忽视Node.js 面试题都是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。如果你希望找一份有关Node...
    99+
    2024-04-02
  • Python 同步框架面试题汇总:你是否能应对这些挑战?
    随着 Python 的广泛应用,同步框架也越来越受到关注。在面试时,经常会涉及到与同步框架相关的问题。本文将为大家汇总一些常见的同步框架面试题,并提供演示代码,希望能够帮助大家更好地准备面试。 一、什么是同步框架? 同步框架是一种用于协调...
    99+
    2023-07-08
    面试 同步 框架
  • 面试官会问你这些 Python 索引问题,你是否准备好了?
    Python 是一门非常流行的编程语言,不仅因为它的易学性和高效性,而且它也非常适合在数据科学、机器学习和人工智能等领域中使用。在求职过程中,Python 作为一门重要的技能,成为了很多公司招聘的重点。因此,在面试中,你很可能会被问到一些 ...
    99+
    2023-10-31
    索引 面试 laravel
  • 这是今年前端最常见的面试题,你都会了吗?
    在面试或招聘前端开发人员时,期望、现实和需求之间总是存在着巨大差距。面试其实是一个交流想法的地方,挑战人们的思考方式,并客观地分析给定的问题。可以通过面试了解人们如何做出决策,了解一个人对技术和解决问题的热情程度,也是在了解未来可能一起共事...
    99+
    2023-06-03
  • GO语言函数面试题:你是否掌握了这些常见的问题?
    GO语言是一种高效、并发、安全和简单的编程语言,它的流行度在近年来不断攀升。GO语言中的函数是一项重要的特性,它们允许开发者将代码块组织成可重用的模块,提高了代码复用性和可维护性。面试中,GO语言函数相关的问题是非常常见的,因此,本文将介...
    99+
    2023-08-30
    面试 函数 leetcode
  • Java面试题之HashMap 的 hash 方法原理是什么
    Warning:这是《Java 程序员进阶之路》专栏的第 55 篇。 回来后小二找到了我,于是我就写下了这篇文章丢给他,并严厉地告诉他:再搞不懂就别来找我。听到这句话,心头一阵酸,小...
    99+
    2024-04-02
  • 7个简单但棘手的JavaScript面试问题是怎样
    本篇文章为大家展示了7个简单但棘手的JavaScript面试问题是怎样,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。如果您符合高级开发人员的资格,其工作涉及Java...
    99+
    2024-04-02
  • Python的16个高频面试问题是什么
    本篇内容介绍了“Python的16个高频面试问题是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!(一)Python 是如何进行内存管理的...
    99+
    2023-06-29
  • 面试官问关于Go和Linux的问题?这是你需要知道的。
    面试官问关于Go和Linux的问题?这是你需要知道。 随着互联网的发展,越来越多的企业开始采用Go语言进行开发。而Linux作为最流行的服务器操作系统,也成为了Go语言开发的首选平台。在面试中,关于Go和Linux的问题也成为了考察候选人技...
    99+
    2023-08-22
    linux 响应 面试
  • 如何在 Windows 系统下设置 PHP 的 Path,这是一道常见的面试题
    在 Windows 系统下设置 PHP 的 Path 是一道常见的面试题。本文将会详细介绍如何在 Windows 系统下设置 PHP 的 Path。 一、什么是 Path 环境变量? 在 Windows 系统中,Path 环境变量是指操作系...
    99+
    2023-09-10
    windows path 面试
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作