python面试宝典1概述与数据结构

学习目标

用于对付python、测试、运维等python基础面试,涵盖如下内容:

  • Python的核心概念
  • 面向对象编程(OOP Object Oriented Programming)的概念
  • Python中的模块
  • Python GUI (Tkinter)
  • 文件处理
  • Python数据库
  • NumPy, Pandas
  • Django, Flask

本文完整版本地址https://www.kdocs.cn/l/cmLtwuCYoPNM

1. 请简述python语言名字的由来

Python是由Guido van Rossum在1991年发布的。在20世纪70年代,有一个流行的BBC喜剧电视节目叫Monty Python's Fly Circus,Van Rossum恰好是这个节目的忠实粉丝。因此,当Python被开发出来时,罗萨姆将该项目命名为Python。

2. 请简述pPython的特点

Python是一种高级的、解释性的、交互式的、面向对象的脚本语言。它具有高度可读性。

  • 函数式和结构化的编程方法,以及OOP。
  • 自动垃圾收集。
  • 可以作为一种脚本语言使用,也可以编译成字节码用于大型应用。
  • 高级的动态数据类型并支持动态类型检查。
  • 胶水语言,与C,C++,COM、ActiveX、CORBA、Java等方便对接

3. Python可以在哪些应用领域使用?

  • GUI的桌面应用
  • 网络应用
  • 游戏
  • 科学和计算
  • 语言开发
  • 企业和商业应用开发:在人工智能、物联网、数据分析等方面为核心语言。
  • 操作系统

4. Python的好处是什么?

  • 开源。Python语言是在OSI批准的开放源码许可证下开发的,这使得它可以自由使用和发布,包括用于商业目的。
  • 易学。Python提供了极好的可读性和简洁易学的语法,这有助于初学者利用这种编程语言。
  • 广泛的支持库。Python提供了庞大的标准库,包括互联网协议、字符串操作、网络服务工具和操作系统接口等领域。它大大减少了代码的长度。
  • 强大的数据结构。Python有内置的列表和字典数据结构,可以用来构建快速的运行时数据结构。
  • 生产力和速度。Python有整洁的面向对象的设计,提供了增强的过程控制能力,并拥有强大的集成和文本处理能力及其单元测试框架,所有这些都有助于提高其速度和生产力。

5.解释一下Python中的内存管理

内存管理是有效地分配、取消分配和协调内存的过程,以便所有不同的进程顺利运行,并能最佳地访问不同的系统资源。内存管理还包括清理不再被访问的对象的内存。

在Python中,内存管理器定期运行来清理、分配和管理内存来负责这类任务。与 C、Java 和其它编程语言不同,Python 通过使用引用计数来管理对象。这意味着内存管理器会跟踪程序中每个对象的引用数量。

让我们通过以下几点来理解内存管理。

  • Python的内存是由Python的私有堆空间管理的。所有的Python对象和数据结构都位于私有堆中。程序员不能访问这个私有堆,解释器负责管理这个Python私有堆。
  • Python对象的Python堆空间的分配是由Python内存管理器完成的。核心API为程序员编码提供了一些工具的访问权。
  • Python内存管理器管理着被称为 "块 "的内存块。相同大小的块的集合构成了 "池"。池是在Arenas上创建的,256kB的内存分配在heap=64的池上。如果对象被销毁,内存管理器会用相同大小的新对象来填充这个空间。
  • Python也有内置的垃圾收集器,它回收所有未使用的内存并释放内存,使其可以进入堆空间。

6.Python有哪些环境变量?这些变量的用途是什么?

  • PYTHONPATH:它与PATH变量相同。Python 解释器使用它来搜索模块文件。
  • PYTHONSTARTUP:它存储了包含 Python 代码的初始化脚本的路径。每次 Python 解释器启动时,它都会被运行。
  • PYTHONCASEOK:在 Windows 中,它使 Python 在导入语句中找到第一个不区分大小写的匹配。需要设置才能激活。

7.Python是脚本语言吗?

是的,Python是一种脚本语言。它也是一种解释型的高级编程语言,用于满足一般的编程要求。它是由名为Guido van Rossum的软件开发人员设计和开发的。
它首次发布于1991年。它动态类型且为很强类型。python脚本语言的文件名扩展名有不同的类型,如.py、.pyc、.pyd、.pyo、.pyw、.pyz。

8.列出Python的重要数据类型

  • 文本类型:str
  • 数值类型:int、float、complex
  • 序列类型:List, tuple, range
  • 映射类型:Dict
  • 集合类型:set,frozenset
  • 布尔类型: bool
  • 二进制类型:bytes、bytearray、memoryview
    以下内容的输出是什么?
    str="swati computers"?
    print (str)

9.如何查看Python的关键字

import keyword
print(keyword.kwlist)

9.什么是pep 8?

答案:PEP是Python Enhancement Proposal的缩写。它是一组规则,规定了如何格式化Python代码以获得最大的可读性。

10.以下内容的输出是什么

str="{s}{c}{j}".format(j='Jaipur',s='Swati',c='Computers')
print(str)

SwatiComputersJaipur

11.以下内容的输出是什么

str="apple#banana#kiwi#orange"
print(str.split("#",2))

[‘apple’, ‘banana’, ‘kiwi#orange’]

11.什么是Python模块?请说出Python中一些常用的内置模块?

Python 模块是包含 Python 代码的文件。这些代码可以是函数类,也可以是变量。它是一个包含可执行代码的 .py 文件。一些常用的内置模块有:

  • os
  • sys
  • math
  • random
  • data time
  • json

12.什么是Python的局部变量和全局变量?

全局变量是在任何模块和函数或方法之外定义的。这些变量可以被程序中的任何函数访问。本地变量是在使用它的函数或方法内部定义的。

13.简述Python中的类型转换?

类型转换是指将一种数据类型转换为另一种。

  • int():将任何数据类型转换为整数类型。
  • float(): 将任何数据类型转换为浮点数类型。
  • ord(): 将字符转换为整数。
  • hex(): 将整数转换为十六进制。
  • oct(): 将整数转换为八进制。
  • tuple(): 该函数用于转换为元组。
  • set(): 转换为set类型。
  • list(): 该函数用于将任何数据类型转换为列表类型。
  • dict(): 此函数用于将(key, value)的元组转换为字典。
  • str(): 用于将任何类型转换为字符串。
  • complex(real,imag): 该函数将实数转换为复数(real,imag)数。

13.解释一下Python中的列表?

列表是Python中最通用的复合数据类型。列表包含由逗号隔开的项目,并被括在方括号 ([]) 内。在某种程度上,列表与 C 语言中的数组相似。它们之间的一个区别是,属于列表的所有项目可以是不同的数据类型。
列表中的值可以用分片操作符([]和[:])来访问,索引从列表的开头0开始,一直到结尾-1。

13.什么是元组?

元组是一种类似于Python列表的数据类型。它由一些用逗号分隔的值组成。然而,与列表不同的是,图元被括在圆括号内,且不可修改。

14.列表和元组的区别?

主要区别:格式上中括号和小括号;可变与不可变。

15.python中的zip()有什么用?

答案:zip()接纳2个或以上的迭代器,返回它们映射的迭代器。输入迭代器可以是列表、元组、字典等。
比如:

>>> name=["swati", "shweta"]
>>> age=[10,20]
>>> new_entity=zip(name,age)
>>> new_entity=set(new_entity)
>>> new_entity
{('swati', 10), ('shweta', 20)}

15.简述 Python 中的字典?

答:Python 的字典是一种哈希表类型。它们的工作方式类似于 Perl 中的关联数组或散列,由键值对组成。字典由大括号 ({}) 包围,可以用方括号 ([]) 来访问。

16.简述 Python中的frozenset()?

Set是一个无序的集合数据类型,它是可迭代的,可改变的,并且没有重复的元素。frozenset()是Python中的一个内置函数,它将一个可迭代的对象作为输入,形成不可变的集合。在 Python 中,frozenset 与 set 相同,只是其元素是不可变的。

17.什么是Python中的_name_?

由于Python中没有main()函数,当向解释器发出运行Python程序的命令时,将执行缩进到0级的代码。name是一个特殊内置变量。如果源文件作为主程序被执行,解释器将name变量设置为"main"的值。如果这个文件作为模块导入的,name将被设置为该模块的名称。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,783评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,360评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,942评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,507评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,324评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,299评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,685评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,358评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,652评论 1 293
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,704评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,465评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,318评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,711评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,991评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,265评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,661评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,864评论 2 335

推荐阅读更多精彩内容

  • 原文链接: 全网最全的数据结构与算法文章合集 一、时间复杂度 O(n)时间解决的面试题:名人问题O(n)时间解决的...
    passiontim阅读 1,003评论 0 1
  • 我是黑夜里大雨纷飞的人啊 1 “又到一年六月,有人笑有人哭,有人欢乐有人忧愁,有人惊喜有人失落,有的觉得收获满满有...
    陌忘宇阅读 8,504评论 28 53
  • 信任包括信任自己和信任他人 很多时候,很多事情,失败、遗憾、错过,源于不自信,不信任他人 觉得自己做不成,别人做不...
    吴氵晃阅读 6,164评论 4 8
  • 步骤:发微博01-导航栏内容 -> 发微博02-自定义TextView -> 发微博03-完善TextView和...
    dibadalu阅读 3,119评论 1 3
  • 回这一趟老家,心里多了两个疙瘩。第一是堂姐现在谈了一个有妇之夫,在她的语言中感觉,她不打算跟他有太长远的计划,这让...
    安九阅读 3,489评论 2 4