Python程序设计习题与答案

合集下载

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

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

《Python程序设计》习题与参考答案第1章基础知识1.1简单说明如何选择正确的Python版本。

答:在选择Python的时候,一定要先考虑清楚自己学习Python的目的是什么,打算做哪方面的开发,有哪些扩展库可用,这些扩展库最高支持哪个版本的Python,是Python2.x还是Python3.x,最高支持到Python反复安装和卸载上。

同时还应该注意,当更新的Python版本推出之后,不要急于更新,而是应该等确定自己所必须使用的扩展库也推出了较新版本之后再进行更新。

尽管如此,Python3毕竟是大势所趋,如果您暂时还没想到要做什么行业领域的应用开发,或者仅仅是为了尝试一种新的、好玩的语言,那么请毫不犹豫地选择Python3.x系列的最高版本(目前是Python3.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别名]✍frommathimport*1.4使用pip命令安装numpy、scipy模块。

答:在命令提示符环境下执行下面的命令:pipinstallnumpypipinstallscipy1.5编写程序,用户输入一个三位以上的整数,输出其百位以上的数字。

例如用户输入1234,则程序输出12。

(提示:使用整除运算。

)答:1)Pythonx=input('Pleaseinputanintegerofmorethan3digits:')try:x=int(x)x=x//100ifx==0:print('Youmustinputanintegerofmorethan3digits.')else:print(x)exceptBaseException:print('Youmustinputaninteger.')2)Pythonimporttypesx=input('Pleaseinputanintegerofmorethan3digits:')iftype(x)!=types.IntType:print'Youmustinputaninteger.'eliflen(str(x))!=4:print'Youmustinputanintegerofmorethan3digits.'else:printx//100第2章Python数据结构2.1为什么应尽量从列表的尾部进行元素的增加与删除操作?答:当列表增加或删除元素时,列表对象自动进行内存扩展或收缩,从而保证元素之间没有缝隙,但这涉及到列表元素的移动,效率较低,应尽量从列表尾部进行元素的增加与删除操作以提高处理速度。

Python程序设计基础练习题及答案

Python程序设计基础练习题及答案

思考与练习答案练习一1.(略)2. 答:只有在第一行为‘空’、进入到第二行时,Sublime菜单项‘文件(F)’下拉菜单中的‘保存(S)’命令才成为可用。

3. 答:程序执行和交互执行两种方式。

4. 答:C练习二1. 答:不行,因为3不是一个有效的变量名,变量名只能以英文字母或下划线打头。

2. 答:可以。

3. 答:空字符串是单引号(或双引号)里不包含任何字符的字符串。

若单引号(或双引号)里包含了一个空格字符,那就表明该字符串里有字符,因此它不是空字符串。

所以,空字符串与单引号(或双引号)里面只包含一个空格字符的字符串,它们是两个不同的字符串概念。

4. 答:第一个print语句输出Please Wait Beyond TheLine.;第二个print语句输出please wait beyond the line.;第三个print语句输出Please Wait Beyond TheLine.5. 答:第一句输出的结果是20;第二句输出的是-1。

6. 答:输出:中华人民共和国,中华人民共和国7. 答:程序中出现n时,代表的是英文中的一个小写字母n;程序中出现\n时,反斜杠后跟随的n就不再是英文中的小写字母n,这个整体被视为是换行符。

8. 答:用str1[-10:-1]截取出的切片是a student。

为了将此切片反转过来,应该做如下的两个操作,第一是先将该切片存放到另一个变量str2里:str2=str1[-10:-1];然后将str2进行反转,即:str2[::-1]。

9. 答:7、32、1。

10. 答:有两种办法,一是当字符串中出现撇号(’)时,用双引号定义该字符串;二是用转义字符\’代替直接使用撇号。

11.答:0b、0o、0x。

12. 答:(1)表示要确定变量ch里的内容是否是介于0与9之间;(2)表示要确定变量ch里的内容是否是介于小写字母a与z之间; (3)表示要确定变量ch里的内容是否是介于大写字母A与Z之间。

《Python程序设计》课后习题参考答案

《Python程序设计》课后习题参考答案

第1章一、选择题1.B2.D3.C4.C二、简答题1.(1)简单易学(2)解释性(3)可移植性(4)可扩展性(5)面向对象(6)丰富的库2.(1)Web应用开发(2)自动化运维(3).网络安全(4).网络爬虫(5).游戏开发(6).数据分析(7).人工智能三、编程题1.print('Hello, World!.')2.print('***********************************')print('\t\tHello Python World!')print('***********************************')第2章2.6习题一、选择题1.C2.D3.C4.A5.B6.D二、填空题2.26 2.type()3.274. -5.75; -6 5. False三、简答题1.(1)变量名必须由字母、数字、或者下划线(_)组成。

(2)不能使用空格、连字符、标点符号、引号等其他特殊字符。

(3)以字母或下划线开头,但不能以数字开头(4)严格区分大小写。

(5)要避免与Python关键字和函数名冲突2. 见表2.4.第3章3.4综合实验#1s1 = " keep on going never give up "s2 = s1.capitalize()print(s2)#2s3 = s2.strip()print(s3)#3print (s3.endswith('up'))#4print (s3.startswith('on'))#5print (s3.replace('e','aa'))#6print (s3.split('n'))#7print (s3.upper())#8n1 = 'Lily'print ('%s says: %s.'%(n1,s3))#9print (s3.center(40,'#'))#10print (s3.count('e'))#11print (s3.split())#12print ('/'.join(s4))#13print (' '.join(s4[::-1]))3.5 习题一、选择题1.B2.D3.C4.C二、填空题1. 'moon'2. 'shipfriend'3. 54. 'bEIjING'5. spam三、编程题1.str1 = 'I want to go to Beijing, Berli and Beijing this year. How about you?' str2 = str1.split()str2 = ' '.join(str2)print (str2)2.思路:(1).变量名的第一个字符是否为字母或下划线(2).如果是,继续判断--> 4(3).如果不是,报错(4).依次判断除了第一个字符之外的其他字符(5).判断是否为字母数字或者下划线while True:s = input('请输入字符(q退出):')if s == 'q':exit()#判断字符串第一个变量是否满足条件if s[0].isalpha() or s[0] == '_':for i in s[1:]:#判断判断除了第一个元素之外的其他元素是否满足条件if i.isalnum() or i == '_':continueelse:print('不合法')breakelse:print('合法')else:print('不合法')3.#!/usr/bin/env python#coding:utf-8s = input("输入:")s1 = s.split(" ")s2 = s1[0].upper()s3 = s1[-1].upper()print (s2.count(s3))4.s = input('input a string:\n')letters, space, digit, others = 0,0,0,0for c in s:if c.isalpha():letters += 1elif c.isspace():space += 1elif c.isdigit():digit += 1else:others += 1print ('char = %d,space = %d,digit = %d,others = %d' % (letters,space,digit,others))第4章4.4 综合实验#01fav_city = []#02fav_city.append('Qinghai')fav_city.append('Chengdu')fav_city.append('Dalian')fav_city.append('Xizang')fav_city.append('Haerbin')print (fav_city)#03fav_city[0] = 'Qingdao'#04fav_city.insert(2,'Kunming')#05del fav_city[0]#06fav_city.remove('Xizang')#07fav_city.sort()#08fav_city.reverse()#09for city1 in fav_city:print (city1)#10tuple_city = tuple(fav_city)#11len(tuple_city)4.5 习题一、选择题1.D2.A3.B4.D5.C二、填空题1.[123,22, 123,22]2.x = [1,3,5,7,9]3. [11,22,33,11]4. Flase5. b= [::2]6. (6,)三、编程题#1import randomx = [random.randint(0,100) for i in range(10)]x.sort()print (x)#2.list1 = ['Hollywood', 'Mexico', 'New Delhi', 'Tokyo'] item = list1.pop(0)list1.append(item)print (list1)#3a = int(input('a:'))for b in x:if a < b:x.insert(x.index(b),a)breakelse:x.append(a)print (x)#3x.pop()x[:5] = sorted(x[:5] ,reverse = True)x[5:] = sorted(x[5:])print (x)4.#列表推导法list1 = [22,11,33,22,44,33]temp_list=[]for x in list1:if x not in temp_list:temp_list.append(x)print (temp_list) #输出结果未排序#排序方法list1 = [22,11,33,22,44,33]list2 = sorted(list1)temp_list = []i = 0while i < len(list2):if list2[i] not in temp_list:temp_list.append(list2[i])else:i += 1print (temp_list) #输出结果已排序第5章字典综合实验1.Qing_Hai = ['qinghai','xining','青',8,'810000']Si_Chuan = ['sichuan','chengdu','川',21,'610000']Gan_Su = ['gansu','lanzhou','陇',14,'730000']Ning_Xia = ['ningxia','yinchuan','宁',5,'750000']Nei_MengGu = ['neimenggu','huhehaote','内蒙古',12,'010000'] Shaan_Xi = ['shaanxi','xian','陕',10,'710000']Shan_Xi = ['shanxi','taiyuan','晋',11,'030000']He_Nan = ['henan','zhengzhou','豫',18,'450000']Shan_Dong = ['shandong','jinan','鲁',16,'250000']provinces = [Qing_Hai,Si_Chuan,Gan_Su,Ning_Xia,Nei_MengGu,Shaan_Xi,Shan_Xi,He_Nan,Shan_Dong] Yellow_River_basin = {}for province in provinces:Yellow_River_basin[province[0]] = province[1:]print(Yellow_River_basin)2.# 遍历嵌套字典的键for key in Yellow_River_basin.keys():print(key)# 遍历嵌套字典的值for value in Yellow_River_basin.values():print(value)# 遍历嵌套字典的键值对for key, value in Yellow_River_basin.items():print(key+"'s Capital is : %s "%value[0]+" For_short is : %s "%value[1]+"Area_manage is : %d个"%value[2]+"Postal_code is : %s"%value[3])3.for provinc in Yellow_River_basin.keys():if provinc == 'sichuan':Yellow_River_basin[provinc] = ['chengdu', '蜀', 21, '610000']elif provinc == 'gansu':Yellow_River_basin[provinc] = ['lanzhou', '甘', 14, '730000']elif provinc == 'shaanxi':Yellow_River_basin[provinc][1] = '秦'print(Yellow_River_basin)4qinghai = {'name':'QingHai','capital':'XiNing','for_short':'青','area_manage':8}sichuang = {'name':'SiChuan','capital':'ChengDu','for_short':'川','area_manage':21}gansu = {'name':'GanSu','capital':'LanZhou','for_short':'陇','area_manage':14}ningxia = {'name':'NingXia','capital':'YinChuan','for_short':'宁','area_manage':5}neimenggu = {'name':'Neimenggu','capital':'HuheHaote','for_short':'内蒙古','area_manage':12} shaanxi= {'name':'ShaanXi','capital':'XiAn','for_short':'陕','area_manage':10}shanxi = {'name':'ShanXi','capital':'TaiYuan','for_short':'晋','area_manage':11}henan = {'name':'HeNan','capital':'ZhengZhou','for_short':'豫','area_manage':18}shandong = {'name':'ShanDong','capital':'JiNan','for_short':'鲁','area_manage':16}basin_list = [qinghai,sichuang,gansu,ningxia,neimenggu,shaanxi,shanxi,henan,shandong] Postal_Code = ['810000','610000','730000','750000','010000','710000','030000','450000','250000']print(basin_list)5for province_num in range(len(basin_list)):basin_list[province_num]['postal_code'] = Postal_Code[province_num]print(basin_list)第5章综合实验一、选择题1.B2.C3.B4.D5.D二、简答题1.(1)字典的键(key)具有唯一性。

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

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

《Python程序设计》习题与答案python教材答案《Python程序设计》习题与答案第一章:Python基础题目1:计算器程序设计答案:代码可以如下所示:```pythondef add(a, b):return a + bdef subtract(a, b):return a - bdef multiply(a, b):return a * bdef divide(a, b):if b == 0:return "Error: Division by zero is not allowed"return a / b```题目2:变量和数据类型答案:Python中的常见数据类型有整型(int)、浮点型(float)、字符串型(str)、布尔型(bool)等。

题目3:条件语句答案:条件语句用于根据不同的条件执行不同的代码块。

常见的条件语句有if语句、if-else语句和if-elif-else语句。

题目4:循环语句答案:循环语句用于多次执行相同或类似的代码块。

常见的循环语句有for循环和while循环。

第二章:函数和模块题目1:函数的定义和调用答案:函数是一段可重复使用的代码块,用于完成特定的任务。

函数的定义可以通过def关键字来实现,而函数的调用则通过函数名和参数完成。

题目2:内置函数答案:Python提供了丰富的内置函数,如print()、len()、input()等。

这些内置函数可以直接使用,无需额外定义。

题目3:模块的导入和使用答案:Python模块是一组相关的函数、类和变量的集合,用于组织、重用和扩展代码。

模块的导入可以使用import语句,然后通过模块名和函数名来调用模块中的内容。

第三章:文件操作题目1:文件的打开和关闭答案:文件操作前需要通过open()函数打开文件,在完成操作后需要使用close()函数关闭文件。

例如:```pythonfile = open("test.txt", "w")# 执行文件操作file.close()```题目2:读取文件内容答案:使用Python的read()函数可以读取整个文件的内容,或者使用readline()函数读取一行内容。

《Python语言程序设计》第一章:初识python

《Python语言程序设计》第一章:初识python

《Python语言程序设计》第一章:初识python(100分)一、单选题(共20题)1、在python语言中,可以作为源文件的后缀名的是()。

【单选题】(4分)A.A、pyB.B、pycC.C、pythonD.D、pdf正确答案: A答案解析: 在python语言中py可以作为源文件的后缀名2、python语言属于()。

【单选题】(4分)A.A、机器语言B.B、汇编语言C.C、高级语言D.D、科学计算语言正确答案: C答案解析: python语言属于高级语言3、以下选项,不属于IPO模式的一部分的是()。

【单选题】(4分)A.A、Program(程序)B.B、Process(处理)C.C、Output(输出)D.D、Input(输入)正确答案: A答案解析: Program(程序)不属于IPO模式的一部分4、以下关于Python缩进的描述错误的是()。

【单选题】(4分)A.A、Python采用严格的缩进表示程序的格式框架,所有代码都需要在行前至少加一个空格B.B、缩进是可以嵌套的,从而形成多重缩进C.C、缩进表达了所属关系和代码块的所属范围D.D、判断、循环、函数等都能通过缩进包含一批代码正确答案: A答案解析: Python采用严格的缩进表示程序的格式框架,并所有代码都需要在行前至少加一个空格,只在指定判断,循环,函数等需要的地方添加5、以下对Python程序设计风格描述错误的是()。

【单选题】(4分)A.A、Python不允许把多条语句写在同一行B.B、Python中,需要把多行语句写在一行时,要用; 隔开C.C、Python语句中,增加缩进表示语句块的开始,减少缩进表示语句块的退出D.D、Python可以将一条长语句分成多行显示,使用续航符\正确答案: A答案解析: Python允许把多条语句写在同一行6、Python语言语句块的标记是()。

【单选题】(4分)A.A、逗号B.B、缩进C.C、/D.D、分号正确答案: B答案解析: Python语言语句块的标记是缩进7、Python源程序执行的方式是()。

《Python程序设计》练习题题库及答案解析

《Python程序设计》练习题题库及答案解析

《Python程序设计》练习题题库及答案解析一、判断题1、Python 3.x和Python 2.x唯一的区别就是:print在Python 2.x中是输出语句,而在Python 3.x中是输出函数。

(错)2、继承自threading.Thread类的派生类中不能有普通的成员方法。

(错)3、扩展库os中的方法remove()可以删除带有只读属性的文件。

(错)4、使用内置函数open()且以”w”模式打开的文件,文件指针默认指向文件尾。

(错)5、使用内置函数open()打开文件时,只要文件路径正确就总是可以正确打开的。

(错)6、Python采用的是基于值得自动内存管理方式。

(对)7、在任何时刻相同的值在内存中都只保留一份(错)8、Python不允许使用关键字作为变量名,允许使用内置函数名作为变量名,但这会改变函数名的含义。

(对)9、在Python中可以使用if作为变量名。

(错)10、在Python 3.x中可以使用中文作为变量名。

(对)11、Python变量名必须以字母或下划线开头,并且区分字母大小写。

(对)12、加法运算符可以用来连接字符串并生成新字符串。

(对)13、9999**9999这样的命令在Python中无法运行。

(错)14、3+4j不是合法的Python表达式。

(错)15、0o12f是合法的八进制数字。

(错)16、Python 2.x和Python 3.x中input()函数的返回值都是字符串。

(错)17、pip命令也支持扩展名为.whl的文件直接安装Python扩展库。

(对)18、只有Python扩展库才需要导入以后才能使用其中的对象,Python标准库不需要导入即可使用其中的所有对象和方法。

(错)19、在Python中0xad是合法的十六进制数字表示形式。

(对)20、3+4j 是合法Python数字类型。

(对)21、在Python中0oa1是合法的八进制数字表示形式。

(错)22、Python使用缩进来体现代码之间的逻辑关系。

Python程序设计课后习题答案

Python程序设计课后习题答案

习题1一、选择题1.Python语言属于()。

CA.机器语言B.汇编语言C.高级语言D.科学计算语言2.下列选项中,不属于Python特点的是()。

BA.面向对象B.运行效率高C.可读性好D.开源3.Python程序文件的扩展名是()。

DA..python B..pyt C..pt D..py4.以下叙述中正确的是()。

CA.Python3.x与Python2.x兼容B.Python语句只能以程序方式执行C.Python是解释型语言D.Python语言出现得晚,具有其他高级语言的一切优点5.下列选项中合法的标识符是()。

AA._7a_b B.break C._a$b D.7ab 6.下列标识符中合法的是()。

BA.i'm B._C.3Q D.for 7.Python不支持的数据类型有()。

AA.char B.int C.float D.list8.关于Python中的复数,下列说法错误的是()。

BA.表示复数的语法形式是a+bj B.实部和虚部都必须是浮点数C.虚部必须加后缀j,且必须是小写D.函数abs()可以求复数的模9.函数type(1+0xf*3.14)的返回结果是()。

DA.<class'int'>B.<class'long'>C.<class'str'>D.<class'float'>10.字符串s='a\nb\tc',则len(s)的值是()。

CA.7B.6C.5D.411.Python语句print(0xA+0xB)的输出结果是()。

DA.0xA+0xB B.A+BC.0xA0xB D.2112.下列属于math库中的数学函数的是()。

CA.time()B.round()C.sqrt()D.random() 13.Python表达式中,可以使用()控制运算的优先顺序。

高级语言程序设计(Python)习题与答案

高级语言程序设计(Python)习题与答案

一、单选题1、计算机为什么采用二进制,而非十进制作为数制的基础?A.因为二进制比十进制计算速度快B.因为二进制比十进制表示能力更强C.因为二进制数精度更高D.因为二进制数更容易被硬件存储和计算正确答案:D2、Python语言为什么被称为高级程序设计语言?A.因为它是编译型语言B.因为它是解释型语言C.因为它比低级语言更复杂D.因为它比低级语言更抽象正确答案:D3、关于Python语言的执行过程,描述正确的是?A.可以同时执行多条语句B.由解释器一条语句一条语句地执行C.执行过的语句将不会再被执行D.由编译器将源程序转化为机器语言,然后执行正确答案:B4、下列Python程序,没有错误的是?A.print 'Hello, ' print 'World!'B.print 'Hello, I\'m Tom.'C.print 'Hello, this's Tom.'D.Print 'Hello, World!'正确答案:B5、在Spyder IDE中编写Python程序,输出“Hello World”,要求将这两个单词分两行输出,以下哪个程序不正确?A.print 'HelloWorld'B.print 'Hello\nWorld'C.print 'Hello'print 'World'D.print "Hello\nWorld"正确答案:A6、执行下列语句,输出的结果是?x = 7.0y = 5print x % yA.1B.2C.1.0D.2.0正确答案:D7、能实现下面功能的程序是?接收用户输入的一个整数。

如果输入的是偶数,则输出“True”,否则输出“False”。

A.print not bool(raw_input() % 2)B.print int(raw_input()) % 2 == 0C.print int(raw_input()) % 2 == 1D.print bool(int(raw_input()) % 2)正确答案:B8、以下程序的输出结果是?y = 0for i in range(0, 10, 2):y += iprint yA.30B.20C.9D.10正确答案:B9、以下程序的输出结果是?number = 30if number % 2 == 0:print number, 'is even'elif number % 3 == 0:print number, 'is multiple of 3'A.30 is evenB.30 is multiple of 3C.程序出错D.30 is even30 is multiple of 3正确答案:A10、以下程序的输出结果是?x = 1y = -1z = 1if x > 0:if y > 0: print 'AAA'elif z > 0: print 'BBB'A.语法错误B.BBBC.AAAD.无输出正确答案:D11、下列程序的输出结果是:def foo():m = 1def bar():n = 2return m + nm = bar()print mfoo()A.1B.3C.程序出错D.2正确答案:B12、字符串s长度为奇数,则显示中间字符的表达式为?A.s[len(s)/2 - 1]B.s[len(s)/2 + 1]C.s[len(s)/2]D.s[(len(s) + 1)/2]正确答案:C13、关于元组数据结构,下面描述正确的是:A.元组不支持切片操作B.所有元素数据类型必须相同C.支持 in 运算符D.插入的新元素放在最后正确答案:C14、一个学生的信息包括:学号、姓名、年龄、性别、电话。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《Python程序设计》习题与参考答案第1章基础知识简单说明如何选择正确的Python版本。

答:在选择Python的时候,一定要先考虑清楚自己学习Python的目的是什么,打算做哪方面的开发,有哪些扩展库可用,这些扩展库最高支持哪个版本的Python,是Python 还是Python ,最高支持到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 numpypip install scipy编写程序,用户输入一个三位以上的整数,输出其百位以上的数字。

例如用户输入1234,则程序输出12。

(提示:使用整除运算。

)答:1)Python 代码:x = input('Please input an integer of more than 3 digits:')try:x = int(x)x = xelse:print(x)except BaseException:print('You must input an integer.')2)Python 代码:import typesx = 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))2)Python 代码x = input('Please input an integer less than 1000:')t = xi = 2result = []while True:if t==1:breakif t%i==0:(i)t = t/ielse:i+=1print x,'=','*'.join(map(str,result))编写程序,至少使用2种不同的方法计算100以内所有奇数的和。

答:Python 代码如下,如果使用Python 只需要把其中的print()函数改为print语句即可。

x = [i for i in range(1,100) if i%2==1]print(sum(x))print(sum(range(1,100)[::2]))编写程序,实现分段函数计算,如下表所示。

答:Python 代码如下,如果使用Python 只需要把其中的print()函数改为print语句即可。

x = input('Please input x:')x = eval(x)if x<0 or x>=20:print(0)elif 0<=x<5:print(x)elif 5<=x<10:print(3*x-5)elif 10<=x<20:print*x-2)第4章字符串与正则表达式假设有一段英文,其中有单独的字母“I”误写为“i”,请编写程序进行纠正。

答:这里给出Python 代码,如果使用Python 的话只需要修改其中的print()函数为print语句即可。

1)不使用正则表达式x = "i am a teacher,i am man, and i am 38 years am not a businessman."x = ('i ','I ')x = (' i ',' I ')print(x)2)使用正则表达式x = "i am a teacher,i am man, and i am 38 years am not a businessman."import repattern = (r'(:[^\w]|\b)i(:[^\w])')while True:result = (x)if result:if (0) != 0:x = x[:(0)+1]+'I'+x[(0)-1:]else:x = x[:(0)]+'I'+x[(0)-1:]else:breakprint(x)假设有一段英文,其中有单词中间的字母“i”误写为“I”,请编写程序进行纠正。

答:这里给出Python 代码,如果使用Python 的话只需要修改其中的print()函数为print语句即可。

import rex = "I am a teacher,I am man, and I am 38 years am not a busInessman."print(x)pattern = (r'(:[\w])I(:[\w])')while True:result = (x)if result:if (0) != 0:x = x[:(0)+1]+'i'+x[(0)-1:]else:x = x[:(0)]+'i'+x[(0)-1:]else:breakprint(x)有一段英文文本,其中有单词连续重复了2次,编写程序检查重复的单词并只保留一个。

例如文本内容为“This is is a desk.”,程序输出为“This is a desk.”答:这里给出Python 代码,如果使用Python 的话只需要修改其中的print()函数为print语句即可。

1)方法一import rex = 'This is a a desk.'pattern = (r'\b(\w+)(\s+\1){1,}\b')matchResult = (x)x = (1),x)print(x)2)方法二x = 'This is a a desk.'pattern = (r'(P<f>\b\w+\b)\s(P=f)')matchResult = (x)x = (0),(1))简单解释Python的字符串驻留机制。

答:Python支持字符串驻留机制,即:对于短字符串,将其赋值给多个不同的对象时,内存中只有一个副本,多个对象共享该副本。

这一点不适用于长字符串,即长字符串不遵守驻留机制,下面的代码演示了短字符串和长字符串在这方面的区别。

>>> a = '1234'>>> b = '1234'>>> id(a) == id(b)True>>> a = '1234'*50>>> b = '1234'*50>>> id(a) == id(b)False编写程序,用户输入一段英文,然后输出这段英文中所有长度为3个字母的单词。

答:这里给出Python 代码,如果使用Python 的话只需要修改其中的print()函数为print语句即可。

import rex = input('Please input a string:') pattern = (r'\b[a-zA-Z]{3}\b')print(x))第5章函数设计与使用运行小节最后的示例代码,查看结果并分析原因。

答:原因是对于函数的默认值参数只会被处理一次,下次再调用函数并且不为默认值参数赋值时会继续使用上一次的结果,对于列表这样的结构,如果调用函数时为默认值参数的列表插入或删除了元素,将会得到保留,从而影响下一次调用。

编写函数,判断一个整数是否为素数,并编写主程序调用该函数。

答:这里给出Python 代码,如果使用Python 的话只需要修改其中的print()函数为print语句即可。

import mathdef IsPrime(v):n = int(v)+1)for i in range(2,n):if v%i==0:return 'No'else:return 'Yes'print(IsPrime(37))print(IsPrime(60))print(IsPrime(113))编写函数,接收一个字符串,分别统计大写字母、小写字母、数字、其他字符的个数,并以元组的形式返回结果。

答:这里给出Python 代码,如果使用Python 的话只需要修改其中的print()函数为print语句即可。

def demo(v):capital = little = digit = other =0for i in v:if 'A'<=i<='Z':capital+=1elif 'a'<=i<='z':little+=1elif '0'<=i<='9':digit+=1else:other+=1return (capital,little,digit,other)x = 'capital = little = digit = other =0'print(demo(x))在Python程序中,局部变量会隐藏同名的全局变量吗请编写代码进行验证。

相关文档
最新文档