当前位置:文档之家› python试卷(有答案版本,个人答案不是官方答案)

python试卷(有答案版本,个人答案不是官方答案)

python试卷(有答案版本,个人答案不是官方答案)
python试卷(有答案版本,个人答案不是官方答案)

《Python 程序设计》期中考试卷 (自己写的答案,有不正确的地方还请给位批评指正) 一、填空题(每空1分,共40分) 1.Python 使用符号 # 标示注释;还有一种叫做 …?? …?? 的特别注释。 2.可以使用 …?? …?? 符号把一行过长的Python 语句分解成几行;多个语句也可以写在同一行,语句之间要用 ; 符号隔开。 3、每一个Python 的 类 都可以被当作一个模块。导入模块要使用关键字 import 。 4、所有Python 对象都有三个特性:身份、类型、值。 5、Python 的数字类型分为 long 、 int 、 float 、 complex 、 不知道 等子类型。 6、Python 序列类型包括 元组 、 列表 、 字典 三种; 字典 是Python 中唯一的映射类型。 7、Python 提供了两个对象身份比较操作符 is 和 is not 来测试两个变量是否指向同一个对象,也可以通过内建函数 type() 来测试对象的身份。 8、Python 的标准类型内建函数有: re 、 urllib 、 json 、 io 、 time 等。 9、Python 的传统除法运算符是 / ,地板除法运算符是

// 。 10、设s=‘abcdefg ?,则s[3]值是 …d ? ,s[3:5]值是 …de ? ,s[:5]值是 …abcde ? ,s[3:]值是 …defg ? ,s[ : :2]值是 …aceg ? ,s[::-1]值是 …gfedcba ? ,s[-2:-5]值是 …? 。 11、删除字典中的所有元素的函数是 clear() ,可以将一个字典的内容添加到另外一个字典中的函数是 update(字典名称) ,返回包含字典中所有键的列表的函数是 keys() ,返回包含字典中所有值的列表的函数是 values() ,判断一个键在字典中是否存在的函数是 get() 。

1.下列哪个语句在Python中是非法的?(B )

A、x = y = z = 1

B、x = (y = z + 1)

C、x, y = y, x

D、x += y

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

A、变量不必事先声明

B、变量无须先创建和赋值而直接使用

C、变量无须指定类型

D、可以使用del释放资源

3、下列哪种情况会导致Python对象的引用计数增加()

A、对象被创建

B、被作为参数传递给函数

C、成为容器对象的元素

D、该对象无法访问时

4、下面哪个不是Python合法的标识符(B)

A、int32

B、40XL

C、self

D、__name__

5、下列哪种说法是错误的(A)

A、除字典类型外,所有标准对象均可以用于布尔测试

B、空字符串的布尔值是False

C、空列表对象的布尔值是False

D、值为0的任何数字对象的布尔值是False

6、下列表达式的值为True的是(C)

A、5+4j > 2-3j

B、3>2>2

C、(3,2)< (…a?,?b?)

D、?abc? > …xyz?

7、Python不支持的数据类型有(A)

A、char

B、int

C、float

D、list

8、关于Python中的复数,下列说法错误的是(B)

A、表示复数的语法是real + image j

B、实部和虚部都是浮点数

C、虚部必须后缀j,且必须是小写

D、方法conjugate返回复数的共轭复数

9、关于字符串下列说法错误的是(A)

A、字符应该视为长度为1的字符串

B、字符串以\0标志字符串的结束

C、既可以用单引号,也可以用双引号创建字符串

D、在三引号字符串中可以包含换行回车等特殊字符

10、以下不能创建一个字典的语句是(C)

A、dict1 = {}

B、dict2 = { 3 : 5 }

C、dict3 = dict( [2 , 5] ,[ 3 , 4 ] )

D、dict4 = dict( ( [1,2],[3,4] ) )

11、下面不能创建一个集合的语句是(C)

A、s1 = set ()

B、s2 = set (“abcd”)

C、s3 = (1, 2, 3, 4)

D、s4 = frozenset( (3,2,1) )

12、下列Python语句正确的是(D)

A、min = x if x < y else y

B、max = x > y ? x : y

C、if (x > y) print x

D、while True : pass

1、简述一个典型Python文件应当具有怎样的结构?

2、下面的Python函数检查给定的字符串s是否为合法的标识符,

程序中有6处语法错误,请改正:

void CheckId(string s): 改正def CheckId(s):

alphas = 'abcdefghijklmnopqrstuvwxyz

ABCDEFGHIJKLMNOPQRSTUVWXYZ_' (改正应使用???…??)nums ="0123456789"

if ( len(s) > 1 )

firstChar = s[0]

if firstChar not in alphas:

print 'Error. First char must be alphas or number.'

else:

//使用切片操作,取出除第1字符外的其它字符

otherChar = s(1 : ) 改正d[1:]

alphasnums = alphas + nums

while c in otherChar: 改正for

if c not in alphasnums:

print 'Error. Other chars must be alphas number or _ .'

break

else:

print ("okay as an identifier") 改正缩进不对

else:

if s not in alphas:

print 'Error.'

else:

print 'Okay as an identifier'

3、写一个函数,计算一个给定的日期是该年的第几天。

def getday(self,y=None,m=None,d=None):

date = datetime(y,m,d)

days = date.strftime('%j')

return days

4、写一个函数,给定N,返回斐波那契数列第N项。

def getn_vlaue(self,n):

if n<=2:

return 1

else:

return self.getn_vlaue(n-1)+self.getn_vlaue(n-2)

5、从0到9中随机选择,生成1到10个随机数,组成集合A,同理生成集合B,输出A和B以及它们的并集和交集

def getnumberlist(self):

a=[]

b=[]

j=k=0

for x in xrange(0,10):

j=int(random.random()*10)

k=int(random.random()*10)

a.append(j)

b.append(k)

print u'集合a:',a

print u'集合b:',b

return a,b

def getendlistj(self,a,b):#并集

c = a+b

new_c = []

for x in xrange(0,len(c)):

temp = c[x]

if temp not in new_c:

new_c.append(temp) print u'并集:',new_c

def getendlistb(self,a,b):#交集

new_a =[]

new_b = []

new_c =[]

for x in xrange(0,len(a)):

temp = a[x]

if temp not in new_a:

new_a.append(temp)

for x in xrange(0,len(b)):

temp = b[x]

if temp not in new_b:

new_b.append(temp)

j = len(new_a) if len(new_a)

for x in xrange(0,j):

temp = new_b[x]

if temp in new_a:

new_c.append(temp)

print u'交集:',new_c

6、给定一个整数N,判断N是否为素数

def getprime(self,n):

if n<=3:

print u'是素数'

else:

i=0

for x in xrange(2,n):

if n%x==0:

i+=1

else:

i=i

if i==0:

print u'是素数'

else:

print u'不是素数'

Python经典面试题

1:Python如何实现单例模式? Python有两种方式可以实现单例模式,下面两个例子使用了不同的方式实现单例模式: 1. class Singleton(type): def __init__(cls, name, bases, dict): super(Singleton, cls).__init__(name, bases, dict) cls.instance = None def __call__(cls, *args, **kw): if cls.instance is None: cls.instance = super(Singleton, cls).__call__(*args, **kw) return cls.instance class MyClass(object): __metaclass__ = Singleton print MyClass() print MyClass() 2. 使用decorator来实现单例模式 def singleton(cls): instances = {} def getinstance(): if cls not in instances: instances[cls] = cls() return instances[cls] return getinstance @singleton class MyClass: … 2:什么是lambda函数? Python允许你定义一种单行的小函数。定义lambda函数的形式如下:labmda 参数:表达式lambda函数默认返回表达式的值。你也可以将其赋值给一个变量。lambda函数可以接受任意个参数,包括可选参数,但是表达式只有一个:>>> g = lambda x, y: x*y >>> g(3,4) 12 >>> g = lambda x, y=0, z=0: x+y+z >>> g(1) 1

Python期末试题题库

D 下面描述错误的是? A. 若a=True,b=False则a or b 为True B. 若a=True,b=False则a and b 为False C. 若a=True,b=False则not a 为False D. a && b 为False D 下面描述错误的是? A. 在python 中逻辑与运算符不能写作&& ,要写作and B. &是两个数字按二进制位作与运算的操作符 C. 3 & 2 的结果为 2 D. 3 & 3 的结果为0 C 下列表达式的值为True 的是? A True>2 B 3>2>2 C ('3','2')<('33','22') D 'abc'>'xyz' C 9.6E-5 表示以下哪个数字? A. 9.6 B. 0.96 C. 0.000096 D. 96 C 下面哪一个是以添加(追加)模式打开文件做写入操作? A: f.open("f","r") B: f.open("f","w") C: f.open("f","a") D: f.open("f","w+") C 下列不属于浮点数类型的是? A. 36.0 B. 96e4 C. -77 D. 9.6E-5 D Python 的序列类型不包括下列哪一种?

A 字符串 B 列表 C 元组 D 字典 A 以下程序输出什么? """ x=1 """ while x: print(x) A. 运行结果显示NameError: name 'x' is not defined B. 运行结果无限循环输出 1 C. 它等价于下面的程序 #x=1 while x: print(x) D. 它等价于下面的程序 while x: print(x) B python 单行注释和多行注释分别是什么? A. """ """ 和''' ''' B. #和""" """ C. // 和''' ''' D. #和// C 表达式3**2 的值为 A. 6 B. 18 C. 9 D. 12 B 以下可以终结一个循环的保留字是 A. if B. break C. exit D. continue A

Python A卷答案

《Python》期末考试试题A卷答案 一、问答题(每题2分,共20分) (1)整形和浮点型(或者int和float) (2)乘法*, 幂运算 **,求余 % (3)/是算术除,包含小数,//是整除,不包含小数(意思对即可) (4) 1、括号内优先 2、幂运算 3、乘法、除法、求余运算 4、加法减法 5、关系运算 6、逻辑运算 答出前4条即可 (5)数字转字符串的函数str(),字符串转数字的函数int(),字符串转浮 点数的函数float(),字符串描述的运算式求值函数是eval() (6)读方式:open(“file.txt”, ‘r’) 写方式:open(“file.txt”, ‘w’) 追加方式:open(“file.txt”, ‘a’) (7) 逻辑运算符与:and 或运算:or 非运算:not。 (8)sublist = list1[2:4] (9) break语句表示要终止循环。 continue语句表示结束当前循环,开始下一次循环。 两者的区别是:break终止循环,continue还有继续循环,只是结束本次循环。 (10) lambda表达式的作用就是为了节省函数的格式化定义,同时减少函 数调用的开销。 例如 lambda x:x+1 二、给出下列代码行相应的输出(每题3分,共15分) 1、在一个随机选择群组中有23 个人,有两个人有相同生日的概率是\n 0.51. 2、This sentence contains five words This sentence contains six different words 3、to be, or not to be. 4、3

Python面试题及答案

P y t h o n面试题及答案 TTA standardization office【TTA 5AB- TTAK 08- TTA 2C】

2018年最新P y t h o n面试题及答案找工作是每个学习Python人员的目标,为了更好的找到工作,刷面试题是必不可少的,了解最新企业招聘试题,可以让你面试更加的顺利。小编整理了一些20XX年最新的Python面试题,来测测你技术的掌握度吧。 1、Python里面如何拷贝一个对象( 赋值,浅拷贝,深拷贝的区别) 答:赋值(=),就是创建了对象的一个新的引用,修改其中任意一个变量都会影响到另一个。 浅拷贝:创建一个新的对象,但它包含的是对原始对象中包含项的引用(如果用引用的方式修改其中一个对象,另外一个也会修改改变){1,完全切片方法;2,工厂函数,如list();3,copy模块的copy()函数} 深拷贝:创建一个新的对象,并且递归的复制它所包含的对象(修改其中一个,另外一个不会改变){copy模块的()函数} 2、Python里面match()和search()的区别? 答:re模块中match(pattern,string[,flags]),检查string的开头是否与pattern匹配。 re模块中research(pattern,string[,flags]),在string搜索pattern的第一个匹配值。 >>>print(‘super’, ‘superstition’).span())

(0, 5) >>>print(‘super’, ‘insuperable’)) None >>>print(‘super’, ‘superstition’).span()) (0, 5) >>>print(‘super’, ‘insuperable’).span()) (2, 7) 3、有没有一个工具可以帮助查找python的bug和进行静态的代码分析? 答:PyChecker是一个python代码的静态分析工具,它可以帮助查找python代码的bug, 会对代码的复杂度和格式提出警告 Pylint是另外一个工具可以进行codingstandard检查 4、简要描述Python的垃圾回收机制(garbage collection)。 答案 这里能说的很多。你应该提到下面几个主要的点: Python在内存中存储了每个对象的引用计数(reference count)。如果计数值变成0,那么相应的对象就会小时,分配给该对象的内存就会释放出来用作他用。 偶尔也会出现引用循环(reference cycle)。垃圾回收器会定时寻找这个循环,并将其回收。举个例子,假设有两个对象o1和o2,而且符合 == o2和 == o1这两个条件。如果o1和o2没有其他代码引用,那么它们就不应该继续存在。但它们的引用计数都是1。

五年级Python试题(含答案)

五年级Python试题(含答案) 学校:班级:姓名:考号: 一、选择(10题) 1、下列哪个语句在Python中是非法的() A、x = y = z = 1 B、x = (y = z + 1) C、x, y = y, x D、x += y 2、执行下列语句后的显示结果是什么( ) >>> world=”world” >>> print “hello”+ world A、helloworld B、“hello”world % C、hello world D、语法错误 3、Python不支持的数据类型有() A、char B、int C、float D、list 4、计算机中信息处理和信息储存用() A 二进制代码 B 十进制代码 C 十六进制代码 D ASCII代码 5、以下哪项python能正常启动() A 拼写错误 B 错误表达式 C 缩进错误 D 手动抛出异常 6、关于Python内存管理,下列说法错误的是() A、变量不必事先声明 B、变量无须先创建和赋值而直接使用 … C、变量无须指定类型 D、可以使用del释放资源 7、python源程序执行的方式() A 编译执行 B 解析执行 C 直接执行D边编译边执行 8、Python语言语句块的标记是( ) A 分号 B 逗号 C 缩进 D / 9、算法是指:() A) 数学的计算公式 B) 程序设计的语句序列 C) 对问题的精确描述 D) 解决问题的解决问题的精确步骤 <10、python计算思维能力和下述其他方面能力相比,何者更接近( ) A) 阅读、写作和算术B) 逻辑推理 C)形象思维D)技巧体操 二、判断(10题) 1、不可以在同一台计算机上安装多个Python版本。() 2、已知x = 3,那么赋值语句x = 'abcedfg' 是无法正常执行的。() 3、Python不允许使用关键字作为变量名,允许使用内置函数名作为变量名,但这会改变函数名的含义。() 4、Python变量名必须以字母或下划线开头,并且区分字母大小写。() 5、Python使用缩进来体现代码之间的逻辑关系。() 6、对于带有else子句的循环语句,如果是因为循环条件表达式不成立而自然结束循环,则执行else子句中的代码。() : 7、已知x = 3,那么执行语句x=x+6 之后,x的内存地址不变。() 8、在编写多层循环时,为了提高运行效率,应尽量减少内循环中不必要的计算。() 9、在条件表达式中不允许使用赋值运算符“=”,会提示语法错误。() 10、Python中一切内容都可以称为对象。() 三、Python操作题保存在D盘里(一大题5小题) 1、已知一位学生某次考试的语文、英语、数学成绩,请你尝试根据输入的三科成绩,编写程序计算出这位同学的平均分,并将结果输出。 2、请你编写程序实现以下功能:读入一个整数a,如果a 为偶数在屏幕上输出a 是偶数;如果 a 为奇数在屏幕上输出 a 是奇数。 3、尝试输出1 至100 之间是5 的倍数的数字。 4、用Python定义一个函数,输入一年份,判断该年份是否是闰年并输出结果请输入一

PYTHON测试题

Python测试题 一、填空题 1.Python使用符号#标示注释;以缩进对齐划分语句块。 2、Python序列类型包括字符串、列表、元组三种; 字典是Python中唯一的映射类型。 3、Python中的可变数据类型有列表和字典,不可变数据类 型有字符串、数字、元组。 4、Python的数字类型分为整数、长整数、浮点、 复数等子类型。 5、Python提供了两个对象身份比较操作符is和is not来测试两个变量是否指向同一个对象,也可以通过内建函数type()来测试对象的类型。 6、设s=‘abcdefg’,则s[3]值是‘d’,s[3:5]值是‘de’, s[:5]值是‘abcdf’,s[3:]值是‘defg’,s[::2]值是‘aceg’,s[::-1]值是‘gfedcba’,s[-2:-5]值是‘’。 二、选择题 1.下列哪个语句在Python中是非法的?() A、x=y=z=1 B、x=(y=z+1) C、x,y=y,x D、x+=y 2.关于Python内存管理,下列说法错误的是()

A、变量不必事先声明 B、变量无须先创建和赋值而直接使用 C、变量无须指定类型 D、可以使用del释放资源 3、下面哪个不是Python合法的标识符() A、int32 B、40XL C、self D、__name__ 4、下列哪种说法是错误的() A、除字典类型外,所有标准对象均可以用于布尔测试 B、空字符串的布尔值是False C、空列表对象的布尔值是False D、值为0的任何数字对象的布尔值是False 5、下列表达式的值为True的是() A、5+4j>2-3j B、3>2>2 C、(3,2)<(‘a’,’b’) D、’abc’>‘xyz’ 6、Python不支持的数据类型有() A、char B、int C、float D、list 7、关于Python中的复数,下列说法错误的是() A、表示复数的语法是real+image j B、实部和虚部都是浮点数 C、虚部必须后缀j,且必须是小写 D、方法conjugate返回复数的共轭复数 8、关于字符串下列说法错误的是() A、字符应该视为长度为1的字符串 B、字符串以\0标志字符串的结束

《Python程序设计》习题与答案

《Python程序设计》习题与参考答案 第1章基础知识 1.1 简单说明如何选择正确的Python版本。 答: 在选择Python的时候,一定要先考虑清楚自己学习Python的目的是什么,打算做哪方面的开发,有哪些扩展库可用,这些扩展库最高反复安装和卸载上。同时还应该注意,当更新的Python版本推出之后,不要急于更新,而是应该等确定自己所必须使用的扩展库也推出了较新版本之后再进行更新。 尽管如此,Python 3毕竟是大势所趋,如果您暂时还没想到要做什么行业领域的应用开发,或者仅仅是为了尝试一种新的、好玩的语言,那么请毫不犹豫地选择Python 3.x系列的最高版本(目前是Python 3.4.3)。 1.2 为什么说Python采用的是基于值的内存管理模式? 答: Python采用的是基于值的内存管理方式,如果为不同变量赋值相同值,则在内存中只有一份该值,多个变量指向同一块内存地址,例如下面的代码。 >>> x = 3 >>> id(x) >>> y = 3 >>> id(y)

>>> y = 5 >>> id(y) >>> id(x) 1.3 在Python中导入模块中的对象有哪几种方式? 答:常用的有三种方式,分别为 ●import 模块名 [as 别名] ●from 模块名 import 对象名[ as 别名] ●from math import * 1.4 使用pip命令安装numpy、scipy模块。 答:在命令提示符环境下执行下面的命令: pip install numpy pip install scipy 1.5 编写程序,用户输入一个三位以上的整数,输出其百位以上的数字。例如用户输入1234,则程序输出12。(提示:使用整除运算。) 答: x = input('Please input an integer of more than 3 digits:') try:

最新python 笔试题

Python基础知识笔试 1 2 3 一、单选题(2.5分*20题) 4 1. 下列哪个表达式在Python中是非法的? B 5 A. x = y = z = 1 6 B. x = (y = z + 1) 7 C. x, y = y, x 8 D. x += y 9 2. python my.py v1 v2 命令运行脚本,通过 from sys impor t argv如何获得v2的参数值? C 10 11 A. argv[0] 12 B. argv[1] 13 C. argv[2] 14 D. argv[3] 15 3. 如何解释下面的执行结果? B 16 print 1.2 - 1.0 == 0.2 17 False 18 A. Python的实现有错误 19 B. 浮点数无法精确表示 20 C. 布尔运算不能用于浮点数比较 D. Python将非0数视为False 21 22 4. 下列代码执行结果是什么? D

23 x = 1 24 def change(a): 25 x+= 1 26 print x 27 change(x) 28 A. 1 29 B. 2 30 C. 3 D. 报错 31 32 5. 下列哪种类型是Python的映射类型? D 33 A. str 34 B. list 35 C. tuple 36 D. dict 6. 下述字符串格式化语法正确的是? D 37 38 A. 'GNU's Not %d %%' % 'UNIX' 39 B. 'GNU\'s Not %d %%' % 'UNIX' C. 'GNU's Not %s %%' % 'UNIX' 40 41 D. 'GNU\'s Not %s %%' % 'UNIX' 42 7. 在Python 2.7中,下列哪种是Unicode编码的书写方式?C A. a = ‘中文’ 43 44 B. a = r‘中文’

Python测试题(题)

Python题(共100分) 一.(共18题,1题5分,共90分) 1. 以下是Python比较运算符中的等于的是( ) A. >= B. <= C. == D. = 2. Python中“假”用什么表示?( ) A. True B. false C. False D. true 3. 以下结果为True的是?( ) A. 3 >= 5 B. 4 == 4 C. 5 < 3 D. 5 != 5 4. 我们使用哪个关键字给模块起一个小名呢?( ) A. as B. import C. Python D. sa 5. 以下程序结果为False的是?( ) A. True and True B. True or False C. False and True D. True or True 6. age = 20 beauty = 95 下列程序结果为True的是?( ) A. age >= 18 and beauty >=80 B. age <= 18 and beauty >=80 C. age >= 18 and beauty <=80 D. age <= 18 and beauty <=80 7. score = 55 if score >= 90 : print(‘3个红花’) elif score >= 80 : print(‘2个红花’) elif score >= 60 : print(‘1个红花’) else : print(‘继续努力’) 成绩等级输出的结果是( ) A. 3个红花 B. 2个红花 C. 1个红花 D. 继续努力 8. 以下程序输出的结果是( ) print(‘1’ + ‘1’) A. ‘11’ B. ‘2’ C. ?一 D. 555 9. 以下程序输出的结果是( ) print(1 + ‘1’) A. ‘11’ B. 程序报错 C. 2 D. ‘2’ 10. str() 将值转化成整数 int() 将值转化成字符串 11. year = ‘2017’ 以上程序结果为'20171'的是? ( ) A. print(year + 1) B. print(str(year) + 1) C. print(int(year) + 1) D. print(year + str(1)) 12. if 条件: print(‘我是编程小达人’) 根据上述代码分析:当以下哪个 选项作为条件时, 会在猿编程IDE提示窗口输出 “我是编程小达人”( ) A. 3 <= 5 B. 4 != 4 C. 5 < 3 D. 6 == 5 13. 有代码如下: if 56 == 100: 语句1 语句2 请问执行哪些语句( ) A. 执行语句1和语句2 B. 只执行 语句1 C. 什么都不执行 D. 只执行语句 2 14. print(‘666’ == ‘666’) 执行上面代码,输出的结果是? ( ) A. True B. False C. ‘666’== ‘666’ D. 不知 道 15. 以下程序结果为True的是?( ) A. True and False B. True and True C. False and True D. False and False 16. 以下程序结果为False的是? ( ) A. True or False B. True or True C. False or True D. False or False 17. “年龄小于等于12或者性别为女” 表达正确的是?( ) A. age < 12 or gender == ‘女’ B. age <= 12 or gender = ‘女’ C. age <= 12 or gender == ‘女’ D. age < 12 or gender = ‘女’ 18. age = 25 if age >= 18: print(‘晨晨是成年人’) print(‘晨晨很胖’) 运行程序后交互窗口的显示结 果为( ) 年龄:25 A、晨晨是成年人 晨晨很胖 C、晨晨是宝宝 B、晨晨很胖 D、晨晨是成年人 二.(10分) 1. 电脑中我们向文件内写入内容的 步骤是?( ) A. 写入文件——> 打开文件— —> 关闭文件 B. 打开文件——> 写入文件— —> 关闭文件 C. 打开文件——> 关闭文件— —> 写入文件 D. 关闭文件——> 写入文件— —> 打开文件

Python面试题及答案

2018年最新Python面试题及答案 找工作是每个学习Python人员的目标,为了更好的找到工作,刷面试题是必不可少的,了解最新企业招聘试题,可以让你面试更加的顺利。小编整理了一些2017年最新的Python面试题,来测测你技术的掌握度吧。 1、Python里面如何拷贝一个对象?(赋值,浅拷贝,深拷贝的区别) 答:赋值(=),就是创建了对象的一个新的引用,修改其中任意一个变量都会影响到另一个。 浅拷贝:创建一个新的对象,但它包含的是对原始对象中包含项的引用(如果用引用的方式修改其中一个对象,另外一个也会修改改变){1,完全切片方法;2,工厂函数,如list();3,copy模块的copy()函数} 深拷贝:创建一个新的对象,并且递归的复制它所包含的对象(修改其中一个,另外一个不会改变){copy模块的()函数} 2、Python里面match()和search()的区别? 答:re模块中match(pattern,string[,flags]),检查string的开头是否与pattern匹配。 re模块中research(pattern,string[,flags]),在string搜索pattern的第一个匹配值。 >>>print(‘super’, ‘superstition’).span()) (0, 5) >>>print(‘super’, ‘insuperable’)) None

>>>print(‘super’, ‘superstition’).span()) (0, 5) >>>print(‘super’, ‘insuperable’).span()) (2, 7) 3、有没有一个工具可以帮助查找python的bug和进行静态的代码分析? 答:PyChecker是一个python代码的静态分析工具,它可以帮助查找python 代码的bug, 会对代码的复杂度和格式提出警告 Pylint是另外一个工具可以进行codingstandard检查 4、简要描述Python的垃圾回收机制(garbage collection)。 答案 这里能说的很多。你应该提到下面几个主要的点: Python在内存中存储了每个对象的引用计数(reference count)。如果计数值变成0,那么相应的对象就会小时,分配给该对象的内存就会释放出来用作他用。 偶尔也会出现引用循环(reference cycle)。垃圾回收器会定时寻找这个循环,并将其回收。举个例子,假设有两个对象o1和o2,而且符合 == o2和 == o1这两个条件。如果o1和o2没有其他代码引用,那么它们就不应该继续存在。但它们的引用计数都是1。 Python中使用了某些启发式算法(heuristics)来加速垃圾回收。例如,越晚创建的对象更有可能被回收。对象被创建之后,垃圾回收器会分配它们所属的代(generation)。每个对象都会被分配一个代,而被分配更年轻代的对象是优先被处理的。

python试卷.docx

2016 年上海市高等学校计算机等级考试试卷二级 Python 语言程序设计(模拟卷)(本试卷考试时间120 分钟) 一、单选题(10 小题,每小题1.5分,共15 分) 1. “ Python 语法认为条件x<=y<=z 是合法的” , 此说法________ A. 错误 B. 是否正确,要依据y 变量的情况而定 C. 正确 D. 是否正确,要依据Python 版本而定 2. 从字符串S的右侧向左数的第3个字符,表示为 A. s[3] B. S[-3] C. S[0:-3] D. S[:-3] 3. 若有iliSt=[0,1,2,3,4] ,则iliSt*2 的结果为 ________ A. [0,0,1,1,2,2,3,3,4,4] B. [0,1,2,3,4,0,1,2,3,4] C. [4,3,2,1,0] D. [ ‘0','1','2','3','4'] 4. 下列类型中,数据不可变化的是_________ A. 列表 B. 字典 C. 元组 D. 列表、字典、元组类型中数据都不可变化 5. ______________________________________________ 字典d={'abc':1, 'qwe':2, 'zxc':3} , Ien(d)的结果为 ___________________________________________ A. 6 B. 9 C. 3 D. 12 6. 在Python 中适合实现多路分支的结构是__________ A. try B. if-eIif-eISe C. if D. if-eISeif-eISe A. next B. while C. in D. elif 7. 用for 和关键词可以组成循环遍历字符串中的每个字符。

python练习题答案

Python练习题库 By 郑红波 2017-12-19 一、填空题 1.Python标准库math中用来计算平方根的函数是__________。(sqrt) 2.在Python中__________表示空类型。(None) 3.列表、元组、字符串是Python的_________(有序?无序)序列。(有序) 4.查看变量类型的Python内置函数是________________。(type()) 5.查看变量内存地址的Python内置函数是_________________。(id()) 6.表达式[1, 2, 3]*3的执行结果为______________________。([1, 2, 3, 1, 2, 3, 1, 2, 3]) 7.list(map(str, [1, 2, 3]))的执行结果为_____________________。([‘1’, ‘2’, ‘3’]) 8.已知 x = 3,并且id(x)的返回值为 496103280,那么执行语句 x += 6 之后,表达式 id(x) == 496103280 的值为___________。(False) 9.已知 x = 3,那么执行语句 x *= 6 之后,x的值为________________。(18) 10.表达式“[3] in [1, 2, 3, 4]”的值为________________。(False) 11.假设列表对象aList的值为[3, 4, 5, 6, 7, 9, 11, 13, 15, 17],那么切片aList[3:7]得到 的值是______________________。([6, 7, 9, 11]) 12.使用列表推导式生成包含10个数字5的列表,语句可以写为_______________。([5 for i in range(10)]) 13.假设有列表a = ['name', 'age', 'sex']和b = ['Dong', 38, 'Male'],请使用一个语句将这 两个列表的内容转换为字典,并且以列表a中的元素为“键”,以列表b中的元素为“值”,这个语句可以写为_____________________。(c = dict(zip(a, b))) 14.任意长度的Python列表、元组和字符串中最后一个元素的下标为________。(-1) 15.Python语句''.join(list('hello world!'))执行的结果是____________________。('hello world!') 16.转义字符’\n’的含义是___________________。(回车换行) 17.Python语句list(range(1,10,3))执行结果为___________________。([1, 4, 7]) 18.切片操作list(range(6))[::2]执行结果为________________。([0, 2, 4]) 19.表达式 'ab' in 'acbed' 的值为________。(False) 20.Python 3.x语句 print(1, 2, 3, sep=':') 的输出结果为____________。(1:2:3) 21.表达式 int(4**0.5) 的值为____________。(2) 22.达式 sorted([111, 2, 33], key=lambda x: -len(str(x))) 的值为____________。([111, 33, 2]) 23.已知列表对象x = ['11', '2', '3'],则表达式 max(x) 的值为___________。('3') 24.表达式 min(['11', '2', '3']) 的值为_________________。('11') 25.已知列表对象x = ['11', '2', '3'],则表达式max(x, key=len) 的值为___________。('11') 26.语句 x = (3,) 执行后x的值为_______________。((3,)) 27.语句 x = (3) 执行后x的值为________________。(3) 28.已知 x = {1:2},那么执行语句 x[2] = 3之后,x的值为________________。({1: 2, 2: 3}) 29.字典对象的_____________方法返回字典中的“键-值对”列表。(items()) 30.使用列表推导式得到100以内所有能被13整除的数的代码可以写作 ___________________________________。([i for i in range(100) if i%13==0]) 31.表达式 3 ** 2 的值为_________。(9) 32.表达式 3 * 2的值为___________。(6) 33.已知 x = [3, 5, 7],那么执行语句 x[len(x):] = [1, 2]之后,x的值为______________。([3, 5, 7, 1, 2]) 34.表达式 list(zip([1,2], [3,4])) 的值为________________________。([(1, 3), (2, 4)]) 35.已知 x = [1, 2, 3, 2, 3],执行语句 x.pop() 之后,x的值为_____________。([1, 2, 3, 2]) 36.表达式 [x for x in [1,2,3,4,5] if x<3] 的值为_____________________。([1, 2])

20道python面试题

对于机器学习算法工程师而言,Python是不可或缺的语言,它的优美与简洁令人无法自拔。那么你了解过Python编程面试题吗?今天我们就来了解一下! 1、python下多线程的限制以及多进程中传递参数的方式 python多线程有个全局解释器锁(global interpreter lock),这个锁的意思是任一时间只能有一个线程使用解释器,跟单cpu跑多个程序一个意思,大家都是轮着用的,这叫“并发”,不是“并行”。 多进程间共享数据,可以使用 multiprocessing.Value和multiprocessing.Array。 2、什么是lambda函数?它有什么好处? lambda 函数是一个可以接收任意多个参数(包括可选参数)并且返回单个表达式值的函数。lambda 函数不能包含命令,它们所包含的表达式不能超过一个。不要试图向lambda 函数中塞入太多的东西;如果你需要更复杂的东西,应该定义一个普通函数,然后想让它多长就多长。 3、Python是如何进行类型转换的? ①函数描述 ② int(x [,base ]) 将x转换为一个整数 ③long(x [,base ]) 将x转换为一个长整数 ④float(x ) 将x转换到一个浮点数 ⑤complex(real [,imag ]) 创建一个复数 ⑥str(x ) 将对象 x 转换为字符串 ⑦repr(x ) 将对象 x 转换为表达式字符串 ⑧eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象 ⑨tuple(s ) 将序列 s 转换为一个元组 ⑩list(s ) 将序列 s 转换为一个列表 ?chr(x ) 将一个整数转换为一个字符 ?unichr(x ) 将一个整数转换为Unicode字符 ?ord(x ) 将一个字符转换为它的整数值 ?hex(x ) 将一个整数转换为一个十六进制字符串 ?oct(x ) 将一个整数转换为一个八进制字符串 4、python多线程与多进程的区别

python试题

o 1、IPO程序编写方法指的是: o o o o A处理数据B输入数据C输出数据D以上都是 【正确答案】:D o 2、错误的输出方式是 o o o o A文件 B随机 C屏幕 D操作系统内部变量 【正确答案】:C o 3、下面哪一项()不是程序设计的一般过程 o o o o A升级维护B设计算法C分析问题D安装IDE 【正确答案】:D o4、在IPO编程示例,编写如何计算多个人的BMI值程序中,变量身高height充当的是()

A 循环控制变量 o B 循环判断条件 o C 循环计数 o D 结果变量 o 【正确答案】:A 5、在Python中,合法的标识符是 o A _ o B 3C o C it’s o D str o 【正确答案】:A --() o6、为了给整型变量x、y、z赋初值10,下面的Python赋值语句是() o o o o A xyz=10 B x=10 y=10 z=10 C x=y=z=10 D x=10,y=10,z=10 【正确答案】:C o 7、Python语言a=851+8.11;print(type(a))的输出结果是() o A

o o o B C D 【正确答案】:B o o o o o o 8、 下面Python循环体执行的次数与其他不同的是()A i=0 while(i<=10): print(i) i=i+1 B i=10 while(i>10): print(i) i=i-1 C for i in range(10): print(i) D

python课后题及答案

第一节课 0. Python 是什么类型的语言? Python是脚本语言 脚本语言(Scripting language)是电脑编程语言,因此也能让开发者藉以编写出让电脑听命行事的程序。以简单的方式快速完成某些复杂的事情通常是创造脚本语言的重要原则,基于这项原则,使得脚本语言通常比C语言、C++语言或Java 之类的系统编程语言要简单容易。 也让脚本语言另有一些属于脚本语言的特性: ?语法和结构通常比较简单 ?学习和使用通常比较简单 ?通常以容易修改程序的“解释”作为运行方式,而不需要“编译” ?程序的开发产能优于运行性能 一个脚本可以使得本来要用键盘进行的相互式操作自动化。一个Shell脚本主要由原本需要在命令行输入的命令组成,或在一个文本编辑器中,用户可以使用脚本来把一些常用的操作组合成一组串行。主要用来书写这种脚本的语言叫做脚本语言。很多脚本语言实际上已经超过简单的用户命令串行的指令,还可以编写更复杂的程序。 1. IDLE 是什么? IDLE是一个Python Shell,shell的意思就是“外壳”,基本上来说,就是一个通过键入文本与程序交互的途径!像我们Windows那个cmd窗口,像Linux那个黑乎乎的命令窗口,他们都是shell,利用他们,我们就可以给操作系统下达命令。同样的,我们可以利用IDLE这个shell与Python进行互动。 2. print() 的作用是什么? print() 会在输出窗口中显示一些文本(在这一讲中,输出窗口就是IDLE shell 窗口)。 3. Python 中表示乘法的符号是什么? Python中的乘号是*(星号)。 4. 为什么>>>print('I love https://www.doczj.com/doc/1510323224.html, ' * 5) 可以正常执行, 但>>>print('I love https://www.doczj.com/doc/1510323224.html, ' + 5) 却报错?

最常见的-35-个-Python-面试题及答案

最常见的35 个Python 面试题及答案(2018 版) 1. Python 面试问题及答案 作为一个Python 新手,你必须熟悉基础知识。在本文中我们将讨论一些Python 面试的基础问题和高级问题以及答案,以帮助你完成面试。包括 Python 开发问题、编程问题、数据结构问题、和 Python 脚本问题。让我们来深入研究这些问题 Python 面试问题 . Python 的特点和优点是什么 Python 可以作为编程的入门语言,因为他具备以下特质: 1. 解释性 2. 动态特性 3. 面向对象 4. 语法简洁 5. 开源 6. 丰富的社区资源 实际上Python 的优点远不止这些,更详细的介绍可以阅读Introduction to Python ( blogs/python-tutorial/) . 深拷贝和浅拷贝的区别是什么 深拷贝是将对象本身复制给另一个对象。这意味着如果对对象的副本进行更改时不会影响原对象。在 Python 中,我们使用 deepcopy()函数进行深拷贝,使用方法如下: 深拷贝-Python 面试问题及答案 浅拷贝是将对象的引用复制给另一个对象。因此,如果我们在副本中进行更改,则会影响原对象。使用 copy()函数进行浅拷贝,使用方法如下: 浅拷贝—Python 面试问题及答案 . 列表和元祖有什么不同 主要区别在于列表是可变的,元祖是不可变的。看下面的例子: 会出现以下错误提示: TypeError: ‘tuple’ object does not support item assignment 关于列表和元祖的更多内容参考 Tuples vs Lists( blogs/python-tuples-vs-lists/)2. Python 面试基础题 到是新手经常会被问到的一些 Python 基础题,有经验的人也可以参考这些问题来复习这些概念。 . 解释 Python 中的三元表达式 与 C++不同, 在 Python 中我们不需要使用符号,而是使用如下语法: [on true] if [expression]else [on false] 如果 [expression] 为真, 则 [on true] 部分被执行。如果表示为假则 [on false] 部分被执行 下面是例子:

最新python试卷(有答案版本-个人答案不是官方答案)

精品文档 《Python 程序设计》期中考试卷 (自己写的答案,有不正确的地方还请给位批评指正) 一、填空题(每空1分,共40分) 1.Python 使用符号 # 标示注释;还有一种叫做 ‘’’ ‘’’ 的特别注释。 2.可以使用 ‘’’ ‘’’ 符号把一行过长的Python 语句分解成几行;多个语句也可以写在同一行,语句之间要用 ; 符号隔开。 3、每一个Python 的 类 都可以被当作一个模块。导入模块要使用关键字 import 。 4、所有Python 对象都有三个特性:身份、类型、值。 5、Python 的数字类型分为 long 、 int 、 float 、 complex 、 不知道 等子类型。 6、Python 序列类型包括 元组 、 列表 、 字典 三种; 字典 是Python 中唯一的映射类型。 7、Python 提供了两个对象身份比较操作符 is 和 is not 来测试两个变量是否指向同一个对象,也可以通过内建函数 type() 来测试对象的身份。 8、Python 的标准类型内建函数有: re 、 urllib 、 json 、 io 、 time 等。 9、Python 的传统除法运算符是 / ,地板除法运算符是 // 。 10、设s=‘abcdefg ’,则s[3]值是 ‘d ’ ,s[3:5]值是 ‘de ’ ,s[:5]值是 ‘abcde ’ ,s[3:]值是 ‘defg ’ ,s[ : :2]值是 ‘aceg ’ ,s[::-1]值是 ‘gfedcba ’ ,s[-2:-5]值是 ‘’ 。 11、删除字典中的所有元素的函数是 clear() ,可以将一个字典的内容添加到另外一个字典中的函数是 update(字典名称) ,返回包含字典中所有键的列表的函数是 keys() ,返回包 含字典中所有值的列表的函数是 values() ,判断一个键在字典中是否存在的函数是 get() 。

Python程序设计习题与答案

《P y t h o n程序设计》习题与参考答案 第1章基础知识 简单说明如何选择正确的Python版本。 答: 在选择Python的时候,一定要先考虑清楚自己学习Python的目的是什么,打算做哪方面的开发,有哪些扩展库可用,这些扩展库最高反复安装和卸载上。同时还应该注意,当更新的Python版本推出之后,不要急于更新,而是应该等确定自己所必须使用的扩展库也推出了较新版本之后再进行更新。 尽管如此,Python 3毕竟是大势所趋,如果您暂时还没想到要做什么行业领域的应用开发,或者仅仅是为了尝试一种新的、好玩的语言,那么请毫不犹豫地选择Python 系列的最高版本(目前是Python )。 为什么说Python采用的是基于值的内存管理模式? 答: Python采用的是基于值的内存管理方式,如果为不同变量赋值相同值,则在内存中只有一份该值,多个变量指向同一块内存地址,例如下面的代码。 >>> x = 3 >>> id(x) >>> y = 3 >>> id(y) >>> y = 5 >>> id(y) >>> id(x) 在Python中导入模块中的对象有哪几种方式? 答:常用的有三种方式,分别为 ?import 模块名[as 别名] ?from 模块名import 对象名[ as 别名] ?from math import * 使用pip命令安装numpy、scipy模块。 答:在命令提示符环境下执行下面的命令:

pip install numpy pip install scipy 编写程序,用户输入一个三位以上的整数,输出其百位以上的数字。例如用户输入1234,则程序输出12。(提示:使用整除运算。) 答: x = input('Please input an integer of more than 3 digits:') try: x = int(x) x = x else: print(x) except BaseException: print('You must input an integer.') import types x = input('Please input an integer of more than 3 digits:') if type(x) != : print 'You must input an integer.' elif len(str(x)) != 4: print 'You must input an integer of more than 3 digits.' else: print xoin(map(str,result)) x = input('Please input an integer less than 1000:') t = x i = 2 result = [] while True: if t==1: break if t%i==0: (i) t = t/i else: i+=1 print x,'=','*'.join(map(str,result)) 编写程序,至少使用2种不同的方法计算100以内所有奇数的和。 x = [i for i in range(1,100) if i%2==1] print(sum(x)) print(sum(range(1,100)[::2])) 编写程序,实现分段函数计算,如下表所示。

相关主题
文本预览
相关文档 最新文档