我是靠谱客的博主 优雅斑马,最近开发中收集的这篇文章主要介绍面试题1.1 python核心编程基础题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1. 下面哪个不是Python合法的标识符:#合法的标识符是以字母和下划线为基准

A: int32      B:40stu      C:self      D:Name     E:stu_class_name

2. python的基本类型有:

A:list     B:char      C:str    D:bool    E:int    F:float    G:Blob    H:以上都是

3. 下面的代码结果是:# 字符串和整型相加是会报错

A:foo    B:foofoo    C:foo2    D:2    E:报错

4.  已知x=43,ch=‘A’,y=1,则表达式(x >= y  and  ch < 'B'  and  y)的值是(提示ascii编码顺序编码代表它们的二进制):

      A. False     B. 0     C: 1    D: True   E: 报错

5. 下列python语句正确的是:

A:max = x > y? x : y     B:min = x  if x < y else y     C:if( x > y)  print(x)    D:while True: pass

6. 下列哪个语句非法:

A:x = y = z =1     B: x =(y = z +1)    C:x, y = 1, 2    D:x += 2

7. 下面while循环执行次数:

A. 0      B. 9    C. 10     D. 20    E. 100    F.死循环

8. 关于Python内存管理,下列说法错误的是:()

A. 变量不必事先声明     B: 变量无需先创建和赋值而直接使用    C: 变量无需指定类型    D:可以使用del释放资源

9. 以下不能创建一个字典的语句是:

A:dict1 = {}    B:dict2 = {3 : 5}    C:dict3 = {[1,2]:"value"}    D:dict4 = {'five': 5}

10. 以下叙述正确的是:

A:continue语句的作用是结束整个循环的执行    B:只能在循环内使用break语句   

C:在循环内使用break语句或continue语句的作用相同    D:从多层循环嵌套中退出时,只能使用goto语句

11.下面哪个语句会无限循环下去:

A:          B     C:      D:

12.What  gets printed?()(

A. 1     B.4    C.7     D.none of the above

13.下列哪些语句会报错:

A:‘中’.encode(encoding="ascii")          B:[1,2,3][3]      C.{'name':'小明', 'age':13}['name]      D.print('1' + 1)

14.What  gets printed?

A.1    B.2   C.exception    D.None

15.下面的哪个代码输出1,2,3:

A:      B:   C、

简答:

1. is,is not, ==, =区别?

答:is、is not,比较的是内存地址是否相等。

       ==,比较两个值是否相当 相等,包括数值和布尔值。

       =,赋值。

2.list和tuple有什么不同

答:tuple是有序列表,一旦初始化,无法修改。tuple不可变,所以代码更安全。;tuple使用圆括号“()”,且若只有一个元素,后面要给一个逗号

list是有序集合,随时增删。list使用方括号“[]”

          1、list、tuple是有序列表;dict、set是无序列表

     2、list元素可变、tuple元素不可变

     3、dict和set的key值不可变,唯一性

     4、set只有key没有value

     5、set的用途:去重、并集、交集等

   6、dict查询效率高,但是消耗内存多;list、tuple查询效率低、但是消耗内存少

详情可见:https://www.cnblogs.com/shengulong/p/7149832.html

3.ascii、unicode、utf-8、gbk等编码的关系

答:

计算机中,所有数据都以0和1来表示。在一开始的时候,要表示的内容比较少,人们使用了ascii编码的方式来编码。

ascii 是最早美国用的标准信息交换码,把所有的字母的大小写,各种符号用 二进制来表示,共有256中,加入些拉丁文等字符,1bytes代表一个字符,

Unicode是为了统一世界各国语言的不用,统一用2个bytes代表一个字符,可以表达2**16=65556个,称为(统一码、万国码、单一码),特点:速度快,但浪费空间,

可以用在内存处理中,兼容了utf-8,gbk,ASCII,

utf-8 为了改变Unicode的这种缺点,规定1个英文字符用1个字节表示,1个中文字符用3个字节表示,特点;节省空间,速度慢,用在硬盘数据传输,网络数据传输,相比硬盘和网络速度,体现不出来的,

gbk  是中文的字符编码,用2个字节代表一个字符,

UTF-8,是对Unicode编码的压缩和优化,GBK,也是基于Unicode编码的进一步优化,

在python2默认编码是ASCII, python3里默认是utf-8

4.解释面向过程思维和面向对象思维

答:https://www.cnblogs.com/schut/p/8541547.html

5.面向对象的特点,好处

答:特点:继承、封装。多态。

封装是从业务逻辑中抽象对象时,要赋予对象相关数据与操作,将一些数据和操作打包在一起的过程,优势支持代码复用,一个类可被多个程序和多个对象使用,而不需要重复的编写代码

多态意味着多种形式,当用面向对象时,它是指对象是怎么回应一个依赖于对象类型或种类的消息。多态的作用是让程序在不同情况下用一个函数名启用不同的方法。多态给予了面向对象系统极大的灵活性。

继承
一个类(subclass)可以继承另一个类(superclass),

继承的优点:1>建造系统中的类,避免重复操作,例如,我们不必为两个子类分别写一个homeAddress()方法,从Employee类继承即可。2>新类经常是基于已经存在的类,这样就可以提升代码的复用程度

6.值传递和址传递

传值就是传入一个参数的值传址就是传入一个参数的地址,也就是内存的地址(相当于指针)。他们的区别是如果函数里面对传入的参数重新赋值,函数外的全局变量是否相应改变,用传值传入的参数是不会改变的,用传址传入就会

具体详情见:https://www.cnblogs.com/Xjng/p/3829368.html

 

 

 

 

最后

以上就是优雅斑马为你收集整理的面试题1.1 python核心编程基础题的全部内容,希望文章能够帮你解决面试题1.1 python核心编程基础题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部