概述
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核心编程基础题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复