教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 实用模板 >

《Python程序设计》题库(16)

来源:网络收集 时间:2026-08-02
导读: 阅读下面的代码,并分析假设文件“D:\\test.txt”不存在的情况下两段代码可能发生 的问题。 代码1: >>> try: fp = open(r'd:\\test.txt') print('Hello world!', file=fp) finally: fp.close() 代码2: >>> try: f

阅读下面的代码,并分析假设文件“D:\\test.txt”不存在的情况下两段代码可能发生

的问题。

代码1: >>> try: fp = open(r'd:\\test.txt') print('Hello world!', file=fp) finally: fp.close() 代码2: >>> try: fp = open(r'd:\\test.txt', 'a+') print('Hello world!', file=fp) finally: fp.close() 答:

假设文件“D:\\test.txt”不存在,那么第一段代码会抛出异常,提示fp没有定义;第二段代码执行正常。原因是第二段代码使用内置函数open()打开指定文件时如果不存在则会创建该文件,从而不会抛出异常。

11、 下面的代码本意是把当前文件夹中所有html文件都改为htm文件,仔细阅读代码,

简要说明可能存在的问题。 import os

file_list=os.listdir(\

for filename in file_list: pos=filename.rindex(\ if filename[pos+1:]==\ newname=filename[:pos+1]+\ os.rename(filename,newname) print(filename+\更名为:\答:

对于字符串对象,如果要查找的子字符串不存在,则rindex()方法会抛出异常。所以,如果

当前文件夹中有不包含圆点的文件名或者子文件夹名,上面的代码会抛出异常而崩溃。

12、 四、编程题 1、编写程序,在D盘根目录下创建一个文本文件test.txt,并向其中写入字符串hello world。 答:

fp = open(r’D:\\test.txt’, ‘a+’) print(‘hello world’, file=fp) fp.close()

2、写出下面代码的优化版本,提高运行效率。 x = list(range(500)) for item in x: t = 5**5

print(item+t) 答:

x = list(range(500)) t = 5**5 for item in x: print(item+t) 3、编写程序,生成一个包含20个随机整数的列表,然后对其中偶数下标的元素进行降序排列,奇数下标的元素不变。(提示:使用切片。) 答:

import random

x = [random.randint(0,100) for i in range(20)] print(x) y = x[::2]

y.sort(reverse=True) x[::2] = y print(x)

4、写出下面代码的执行结果。 def Join(List, sep=None):

return (sep or ',').join(List) print(Join(['a', 'b', 'c'])) print(Join(['a', 'b', 'c'],':')) 答: a,b,c a:b:c

5、写出下面代码的运行结果。 def Sum(a, b=3, c=5): return sum([a, b, c]) print(Sum(a=8, c=2)) print(Sum(8)) print(Sum(8,2)) 答:

13 16 15

6、写出下面代码的运行结果。 def Sum(*p):

return sum(p) print(Sum(3, 5, 8)) print(Sum(8))

print(Sum(8, 2, 10)) 答: 16 8 20

7、编写函数,判断一个数字是否为素数,是则返回字符串YES,否则返回字符串NO。 答:

import math def IsPrime(v):

n = int(math.sqrt(v)+1) for i in range(2,n): if v%i==0: return 'No' else:

return 'Yes'

8、编写函数,模拟Python内置函数sorted()。 答:

def Sorted(v): t = v[::] r = [] while t:

tt = min(t) r.append(tt) t.remove(tt) return r

9、编写程序,生成包含20个随机数的列表,然后将前10个元素升序排列,后10个元素降序排列,并输出结果。 答:

import random

x = [random.randint(0,100) for i in range(20)] print(x) y = x[0:10] y.sort() x[0:10] = y y = x[10:20]

y.sort(reverse=True)

…… 此处隐藏:99字,全部文档内容请下载后查看。喜欢就下载吧 ……
《Python程序设计》题库(16).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/520030.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)