文章目录

  • 函数
    • 1 使用函数求特殊a串数列和
    • 2 使用函数求素数和
    • 3 使用函数统计指定数字的个数
    • 4 使用函数输出指定范围内Fibonacci数的个数
    • 5 使用函数求余弦函数的近似值
    • 6 缩写词
  • 编程题
    • 第1章
      • 1 从键盘输入两个数,求它们的和并输出
      • 2 从键盘输入三个数到a,b,c中,按公式值输出
      • 3 输出“人生苦短,我学Python”
    • 第2章
      • 1 计算 11+12+13+...+m
      • 2 计算分段函数[1]
      • 3 阶梯电价
      • 4 特殊a串数列求和
      • 5 求奇数分之一序列前N项和
      • 6 求交错序列前N项和
      • 7 产生每位数字相同的n位数
      • 8 转换函数使用
      • 9 比较大小
      • 10 输出华氏-摄氏温度转换表
      • 11 求平方与倒数序列的部分和
      • 12 输出三角形面积和周长
      • 13 分段计算居民水费
      • 14 求整数段和
    • 第3章
      • 1 大于身高的平均值
      • 2 查验身份证
      • 3 输出字母在字符串中位置索引
      • 4 查找指定字符
      • 5 字符转换
      • 6 求整数序列中出现次数最多的数
      • 7 求最大值及其下标
      • 8 字符串逆序
      • 9 字符串转换成十进制整数
      • 10 统计大写辅音字母
      • 11 字符串排序
      • 12 求整数的位数及各位数字之和
      • 13 字符串替换
      • 14 字符串字母大小写转换
      • 15 统计一行文本的单词个数
      • 16 删除重复字符
      • 17 删除字符
      • 18 输出10个不重复的英文字母
      • 19 找最长的字符串
      • 20 逆序的三位数
      • 21 判断回文字符串
      • 22 输出大写英文字母
    • 第4章
      • 1 生成3的乘方表
      • 2 统计素数并求和
      • 3 猴子吃桃问题
      • 4 验证“哥德巴赫猜想”
      • 5 求e的近似值
      • 6 输出前 n 个Fibonacci数
      • 7 统计学生平均成绩与及格人数
      • 8 求分数序列前N项和
      • 9 查询水果价格
      • 10 最大公约数和最小公倍数
      • 11 判断素数
      • 12 求满足条件的斐波那契数
      • 13 求误差小于输入值的e的近似值
      • 14 统计字符
      • 15 换硬币
      • 16 jmu-python-判断是否构成三角形
      • 17 水仙花数
      • 18 猴子选大王
      • 19 矩阵运算
      • 20 求矩阵各行元素之和
      • 21 判断上三角矩阵
      • 22 找鞍点
      • 23 求矩阵的局部极大值
      • 24 打印九九口诀表
      • 25 输出三角形字符阵列
      • 26 求1!+3!+5!+……+n!
      • 27 二维数组中每行最大值和每行和
      • 28 矩阵转置
      • 29 找出不是两个数组共有的元素
      • 30 找完数
    • 第5章
      • 1 输出星期名缩写
      • 2 图的字典表示
      • 3 四则运算(用字典实现)
      • 4 分析活动投票情况
      • 5 统计字符出现次数
      • 6 统计工龄
      • 7 列表去重
      • 8 能被3,5和7整除的数的个数(用集合实现)
      • 9 求矩阵鞍点的个数
      • 10 两数之和
      • 11 字典合并
    • 第6章
      • 1 输入列表,求列表元素和(eval输入应用)
      • 2 一帮一
      • 3 列表或元组的数字元素求和
      • 4 列表数字元素加权和(1)
      • 5 列表元素个数的加权和(1)
      • 6 求指定层的元素个数
      • 7 找出总分最高的学生
      • 8 输出全排列

函数

1 使用函数求特殊a串数列和

def fn(a,n):s = 0temp = afor i in range(n):s += temptemp = temp*10 + areturn s

2 使用函数求素数和

def prime(p):if p < 2:return Falsefor i in range(2, int(p**0.5)+1):if p%i == 0:return Falsereturn Truedef PrimeSum(m,n):ls = []for num in range(m, n+1):if prime(num):ls.append(num)return sum(ls)

3 使用函数统计指定数字的个数

def CountDigit(number, digit):return str(number).count(str(digit))

4 使用函数输出指定范围内Fibonacci数的个数


def fib(n):if n == 0 or n == 1:return 1return fib(n-1)+fib(n-2)def PrintFN(m,n):result = []for i in range(25):if m <= fib(i) <= n:result.append(fib(i))return result

5 使用函数求余弦函数的近似值

import math
def funcos(eps,x):i = 0s = 0flag = -1while abs(x**i/math.factorial(i)) >= eps:flag = -flags += flag*x**i/math.factorial(i)i += 2return s

6 缩写词

def acronym(phrase):ls = phrase.split()c = ''for s in ls:c += s[0].upper()return c

编程题

第1章

1 从键盘输入两个数,求它们的和并输出

a = eval(input())
b = eval(input())
print(a+b)

2 从键盘输入三个数到a,b,c中,按公式值输出

a, b, c = map(eval, input().split())
print(b*b-4*a*c)

3 输出“人生苦短,我学Python”

print('人生苦短,我学Python')

第2章

1 计算 11+12+13+…+m

m = eval(input())
print('sum = {}'.format(sum(range(11,m+1))))

2 计算分段函数[1]


注意格式:保留小数点后一位

def f(x):if x == 0:return 0else:return 1/x
x = eval(input())
print('f({:.1f}) = {:.1f}'.format(x, f(x)))

3 阶梯电价

quan = eval(input())
if quan < 0:print('Invalid Value!')
elif quan <= 50:cost = 0.53*quanprint('cost = {:.2f}'.format(cost))
else:cost = 0.53*50 + (quan-50)*(0.53+0.05)print('cost = {:.2f}'.format(cost))

4 特殊a串数列求和


题目序列表述有误,测试的是序列a + aa + aaa +…+aa…aa(n个)

a, n = map(int, input().split())
s = 0
temp = a
for i in range(n):s += temptemp = temp*10 + a
print('s = {}'.format(s))

若是题给序列:

a, n = map(int, input().split())
s = 0
temp = a
if n%2 == 0: #若为偶数项,直接折半for i in range(n//2):s += temptemp = temp*10 + as *= 2 #倍乘
else:for i in range(n//2):s += temptemp = temp*10 + as *= 2s += temp #折半后补上中间数
print('s = {}'.format(s))

5 求奇数分之一序列前N项和

N = eval(input())
s = 0
for i in range(1, N+1):s += 1/(2*i-1)
print('sum = {:.6f}'.format(s))

6 求交错序列前N项和

n = eval(input())
s, flag = 0, -1
for i in range(1, n+1):flag = -flags += flag*i/(2*i-1)
print('%.3f'%s) #字符串格式控制

7 产生每位数字相同的n位数


使用列表推导分割字符串,再逐个strip(),消除空格符

a, b = [s.strip() for s in input().split(',')]
print(a*eval(b))

或者采用map方法的同时,利用lambda匿名函数处理各个元素

a, b = map(lambda d:int(d.strip()), input().split(','))
print(str(a)*b)

8 转换函数使用


注意,int进制转换只能转换字符串

num, n = map(int, input().split(','))
print(int(str(num), n))

9 比较大小


注意:

  1. 此处构造列表需要将元素由str化为int,直接对str排序不一定正确
  2. print排序处不能使用.sort(),因为sort是原地修改,无返回值
ls = [eval(x) for x in input().split()]
print(*sorted(ls), sep='->')

10 输出华氏-摄氏温度转换表


注意:
range的范围要注意,终止地址要+1

lower, upper = map(eval, input().split())
if lower > upper or upper > 100:print('Invalid.')
else:print('fahr celsius')for i in range(lower, upper+1, 2):print('{}{:6.1f}'.format(i, 5*(i-32)/9))

11 求平方与倒数序列的部分和

m, n = map(int, input().split())
s = 0
for i in range(m, n+1):s += i**2 + 1/i
print('sum = {:.6f}'.format(s))

12 输出三角形面积和周长


即,海伦公式

a, b, c = map(int, input().split())
if a + b > c and a + c > b and b + c > a:s = (a+b+c)/2print('area = {:.2f}; perimeter = {:.2f}'.format((s*(s-a)*(s-b)*(s-c))**0.5, s*2))
else:print('These sides do not correspond to a valid triangle')

13 分段计算居民水费

x = eval(input())
y = 4*x/3 if x <= 15 else 2.5*x-17.5
print('%.2f'%y)

14 求整数段和


考察格式控制输出,不能简单使用列表解包

a, b = map(eval, input().split())
cnt = 0
for i in range(a, b+1):print('{:>5d}'.format(i), end='')cnt += 1if cnt%5 == 0:print()
if len(range(a, b+1))%5 != 0: #最后一行不足5个数的情况print()
print('Sum = {}'.format(sum(range(a, b+1))))

第3章

1 大于身高的平均值


注意结尾也有空格

ls = list(map(eval, input().split()))
average = sum(ls)/len(ls)
for s in ls:if s > average:print(s, end=' ')

2 查验身份证



最后一个测试点没过

w = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2]
M = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2']
n = eval(input())
flag = 0 #判是否全部正确
for i in range(n):cred = input()if not cred[:17].isdigit() or len(cred) != 18: #前17位存在非数字,不合法print(cred)continuemul = 0for j in range(17):mul += int(cred[j])*w[j]if M[mul%11] != cred[-1]: #校验码不合法print(cred)flag = 1
if flag == 0:print('All passed')

3 输出字母在字符串中位置索引

ls = input()
a, b = input().split()
for i, s in enumerate(ls[::-1]):if s == a or s == b:print(len(ls)-i-1, s)

4 查找指定字符

s = input()
ls = input()
flag = 0
for i, k in enumerate(ls[::-1]):if k == s:flag = 1break
print('index = %d'%(len(ls)-i-1)) if flag == 1 else print('Not Found')

字符串方法中,有关于查找的方法find()和rfind()

>>> ls
'programming'
>>> ls.rfind('m')
7
>>> ls.find('m')
6

5 字符转换


输出整数字符串可能以0开头,要注意。这里用int去除。

ls = input()
print(int(''.join([x for x in ls if x.isdigit()])))

6 求整数序列中出现次数最多的数

nums = input().split()
maxi = 0
for num in set(nums):if nums.count(num) > maxi:maxi = nums.count(num)m = num
print(m, maxi)

7 求最大值及其下标

n = eval(input())
nums = list(map(int, input().split()))
print(max(nums), nums.index(max(nums)))

8 字符串逆序

ls = input()
print(ls[::-1])

9 字符串转换成十进制整数


注意:

  1. 首先把字母统一大小写
  2. 截取‘#’之前的部分
  3. 特殊情况:十六进制数不存在要单独判断
ls = input().lower()
ls = ls[:ls.index('#')]
six = '0123456789abcdef'
temp = ''
for s in ls:if s in six:temp += s
if temp == '': #字符串中不存在十六进制数字print(0)
else:if '-' in ls[:ls.index(temp[0])]: #十六进制数的首字母前存在负号print('-',end='')print(int(temp, 16))

10 统计大写辅音字母


注意:本题使用了filter()方法,多加练习

def f(s):'''判断元音、小写辅音或非字母'''c = 'aeiouAEIOU'if s in c or s.islower() or not s.isalpha():return Falsereturn Truels = list(input())
result = list(filter(f, ls))
print(len(result))

11 字符串排序

ls = input().split()
ls.sort()
print('After sorted:')
for s in ls:print(s)

12 求整数的位数及各位数字之和

num = input()
total = sum([eval(x) for x in num])
print(len(num), total)

13 字符串替换

g = str.maketrans('ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'[::-1])
ls = input()
print(ls.translate(g))

14 字符串字母大小写转换

ls = input()
ls = ls[:ls.index('#')]
print(ls.swapcase())

15 统计一行文本的单词个数

ls = input().split()
print(len(ls))

16 删除重复字符


输出之前需要排序,所以用集合去重打乱了顺序也没关系。

ls = input()
print(''.join(sorted(list(set(ls)))))

17 删除字符


列表推导最好用啦

浙大版《Python 程序设计》题目集相关推荐

  1. 丁亚涛c语言程序设计第3版,c语言程序设计(第3版)丁亚涛.pdf

    <C 语言程序设计 (第3 版)>丁亚涛 教材习题与解答 习题1 [参考答案] 1. C 语言基本特点:简洁.紧促.灵活.运算符丰富.数据结构丰富.移植性好等. 2. 程序如下: #inc ...

  2. java 程序设计 第八版,java语言程序设计第八版答案

    参考答案如下 程序[单选题]船用离心泵需向压力较高容器供液时,最常用的方法是________.A. 用大直径叶轮 B. 提高转速 C. 用多级泵 D. 用并联泵 设计[单选题]甲癣口服药治疗,由于用药 ...

  3. 何钦铭c语言程序设计第八章,c语言程序设计(第3版)何钦铭-颜-晖-第8章--指针

    1.第8章 指针[练习8-1]如果有定义"int m, n = 5, *p = &m;"与m = n等价的语句是 B .A m = *p; B. *p = *&n; ...

  4. c语言程序设计第4版pdf荣政_C语言程序设计(第4版) (史蒂芬.寇肯) 中文pdf扫描版[82MB]...

    C语言程序设计(第4版)全面介绍了C语言的各种特性,包括C11中增加的内容.书中包含大量完整的示例及详细的讲解.无论是否拥有编程经验,你都可以通过本书透彻地理解C语言.每章最后附有习题,便于课堂学习或 ...

  5. c语言函数的程序设计,C语言程序设计第3版,第6章函数程序设计.ppt

    C语言程序设计第3版,第6章函数程序设计 C语言程序设计 第6章 函数程序设计 第6章 数组程序设计 6.1 函数概述 6.2 自定义函数示例 6.3 函数定义及调用 6.4 函数嵌套和递归函数 6. ...

  6. java第二版课后题答案_Java语言程序设计第2版第16章 课后习题答案

    <Java语言程序设计第2版第16章 课后习题答案>由会员分享,可在线阅读,更多相关<Java语言程序设计第2版第16章 课后习题答案(62页珍藏版)>请在人人文库网上搜索. ...

  7. 第三章 函数 C++语言程序设计第五版 - 郑莉

    本专栏为C++学习笔记,参考书籍为:C++语言程序设计 第五版 -清华大学出版社- 郑莉 B站视频:https://space.bilibili.com/702528832/video PPT与代码已 ...

  8. C++语言程序设计第五版 - 郑莉-绪论(一)

    本专栏为C++学习笔记,参考书籍为:C++语言程序设计 第五版 -清华大学出版社- 郑莉 B站视频:https://space.bilibili.com/702528832/video PPT与代码已 ...

  9. C++语言程序设计(第4版)郑莉练习

    C++练习(持续更新) 教材:c++语言程序设计第四版 [教材习题4_13:定义Circle类并计算面积] [问题描述] 定义一个Circle类,有数据成员radius(半径),成员函数getArea ...

  10. c语言二分答案最小值,C语言程序设计第2版课后习题答案(贾宗璞许合利人民邮电-第2版).doc...

    C语言程序设计第2版课后习题答案(贾宗璞许合利人民邮电-第2版) C语言习题答案 第1章 1.选择题 (1) C (2) B (3) 2.填空题 (1)main (2) main (3) 有穷性.确定 ...

最新文章

  1. Python查找相同元素,不同元素
  2. 长沙网络推广浅析新站怎么做会对排名提升更有帮助?
  3. java从静态代理到动态代理的理解
  4. 数学基础、机器学习经典算法、统计学习方法,这份机器学习在线手册来帮你...
  5. python 接口测试 url_Python 接口测试之接口请求方法封装
  6. Android笔记 actionbar学习
  7. 2017.10.17 蜘蛛难题 思考记录
  8. Pytorch nn.functional.unfold()的简单理解与用法
  9. Awake OnEnable Start Update LateUpdate FixedUpdate
  10. 给页面加上loading加载效果
  11. UML建模:学习笔记(1)
  12. python 最准确的图片转文字软件_图片转文字软件哪个好用?免费的图片转文字软件...
  13. 互联网协议理解(入门)
  14. FFmpeg转码音视频不同步情况总结
  15. 软件工程毕业设计题目合集【含源码+论文】
  16. 《基于机器视觉的高压输电线路覆冰厚度检测》论文笔记
  17. 车牌识别--opencv(python)
  18. Unity SetFromToRotation和FromToRotation的区别
  19. 麻将胡牌算法的Java实现
  20. 全球及中国生物制药产业盈利现状及竞争格局展望报告2021-2027年

热门文章

  1. Java中long与float
  2. 新房和二手房税费比较
  3. 电脑老是弹出vrvedp_m_vrvedp_m.exe是什么进程?是病毒吗?vrvedp,vrvedp.exe,,,,,,,
  4. 又一神作。Alibaba“M8级”架构师总结微服务与事件驱动架构启蒙手册
  5. grad-cam一直无法画比较合适的图的原因
  6. 从小白到数据分析师的成长之路
  7. Dev C++可以编译但运行时提示Failed to execute且Error 0:操作成功完成。
  8. Dev C++可以编译但运行时提示failed to execute且error 0:操作成功完成
  9. 权威发布丨2022 中国开源先锋 33 人之心尖上的开源人物
  10. python运维自动化脚本案例-python自动化运维脚本范例