Python程序设计 测验易错题总结
1.温度转换
t=input()
if t[-1]=="J":
t=int(t[:-1])
t1=t/4.186
print("%.3fcal"%t1)
else:
t=int(t[0:-3])
t2=t*4.186
print("%.3fcal"%t2)
#这一题不难,但要注意input()里面不要加提示语句,会报错的。
2.快乐的数字
n=input()
h=0
i=0
while i<100:
for x in n:
h+=int(x)**2
print(n)
if h==1:
print("True")
break
else:
n=str(h)
h=0
i+=1
else:
print("False")
3.斐波那契数列计算 B
描述:
斐波那契数列如下:
F(0) = 0, F(1) = 1
F(n) = F(n-1) + F(n-2)
编写一个计算斐波那契数列的函数,采用递归方式,输出不超过n的所有斐波那契数列元素
调用上述函数,完成如下功能:
用户输入一个整数n,输出所有不超过n的斐波那契数列元素、输出数列的元素和及平均数,输出按照顺序,用英文逗号和空格分割
此题目为自动评阅,请严格按照要求规范输入和输出。
输入
示例1:5
输出
示例1:
0, 1, 1, 2, 3, 5, 12, 2
n=eval(input()) #输出一个斐波那契数列元素
def fun(n):
if n==0:
return 0
elif n==1:
return 1
else:
return fun(n-1)+fun(n-2)
i=0
l=[]
while i<=n: #输出从0到n的斐波那契数列元素
a=fun(i)
l.append(a)
print("{}, ".format(a),end="") #0以后的元素前面都有空格
i+=1
sums=sum(l)
average=sums//len(l)
print("{},{}".format(sums,average)) #总和和平均数前面也有空格
4.站队顺序输出
描述:
有一群人站队,每人通过一对整数(h, k)来描述,其中h表示人的高度,k表示在此人前面队列中身高不小于此人的总人数。
实现一个算法输出这个队列的正确顺序。
输入格式:
输入格式为二维列表,即 list[list[]]形式
外层list包含队列中全部的人,内层list为[h,k]格式,代表个人信息。
输出格式:
输出格式为:list[list[int]]形式
与输入格式一样,需要按照队列顺序排列。
输入输出示例 :
示例 1
输入
[[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]
输出
[[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]
from operator import itemgetter
queue = eval(input()) queue.sort(key = itemgetter(1))
queue.sort(key = itemgetter(0), reverse = True) output = []
for item in queue:
output.insert(item[1], item)
print(output)
5.合法括号组合的生成
描述:
给定括号的个数n,编写程序生成所有格式正确的括号组合。
输入格式 :输入一个整数。
输出格式:输出为一个列表,每个元素是一个字符串,表示一个可能的括号组合。
示例 :
输入:3
输出:['((()))', '(()())', '(())()', '()(())', '()()()']
def brackets(List,s,left,right):
if left==0 and right==0:
List.append(s)
if left>0: #注意这里是if,不是elif
brackets(List,s+'(',left-1,right+1)
if right>0: #注意这里是if,不是elif
brackets(List,s+')',left,right-1)
return List
left=eval(input())
right=0
List=[]
s=''
brackets(List,s,left,right)
print(List)
6.凯撒密码 B
pwd=input()
s=""
for x in pwd:
count=0
if x in "ABCDEFGHIJKLMNOPQRSTUVWXYZ":
c=(ord(x)+3-64)%26+64
s+=chr(c)
count=1
if x in "abcdefghijklmnopqrstuvwxyz":
c=(ord(x)+3-97)%26+97
s+=chr(c)
count=1
if count==0:
s+=x
print(s)
7. 3位水仙花数计算 B
for n in range(100,999):
a=str(n)
s=int(a[0])**3+int(a[1])**3+int(a[2])**3
if n==407:
print(n)
if s==n and n!=407:
print(n,end=",")
8.词频统计之《哈姆雷特》
def getTxt():
txt=open("hamlet.txt","r").read()
txt=txt.lower()
for ch in '!"#$%&()*+,-./:;<=>?@[\\]^_{|}`~''':
txt=txt.replace(ch," ")
return txt
txt=getTxt()
words=txt.split()
count={}
for word in words:
count[word]=count.get(word,0)+1
items=list(count.items()) #二维列表
items.sort(key=lambda x:x[1],reverse=True)
for i in range(10):
word,count=items[i]
print("{:<10},{:>5}".format(word,count))
Python程序设计 测验易错题总结的更多相关文章
- 【笔试题】Java 易错题精选
笔试题 Java 易错题精选 1.写出下列程序的运行结果( )String 不变性Java 值传递 public class Test { public static void main(String ...
- python函数使用易错举例
关于嵌套: 嵌套使用中, retrun inner ---> 返回的是函数的地址 retrun inner() : ---> 运行inner()函数 ---> 运行i ...
- Java五道输出易错题解析(避免小错误)
收集了几个易错的或好玩的Java输出题,分享给大家,以后在编程学习中稍微注意下就OK了. 1. 看不见的空格? 下面的输出会正常吗? package basic; public class Integ ...
- Java五道输出易错题解析(进来挑战下)
转自:http://blog.csdn.net/lanxuezaipiao/article/details/41985243 收集了几个易错的或好玩的Java输出题,分享给大家,以后在编程学习中稍微注 ...
- 杭电OJ2039——三角形(c++)(易错题:数据类型不确定)
三角形 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submis ...
- python基础易错题
1.以下代码输入什么: class Person: a = 1 def __init__(self): pass def getAge(self): print(__name__) p = Perso ...
- python易错题之lambda 以及 for循环中内嵌函数
li = [] for x in range(10): print(x) //在函数没有执行前(li[0]()),for 循环中x已经执行完,x会一直为 9 def fun(): print(x) / ...
- python易错题之作用域
name = "lzl" def f1(): print(name) def f2(): name = "eric" f1() f2() //结果为 lzl 记 ...
- JAVA程序改错 (易错题)
JAVA程序改错 1. abstract class Name { private String name; public abstract boolean isStupidName(String n ...
随机推荐
- 企业日常巡检shell脚本
Linux内部查看系统信息 $INTERNET192忽略 [root@ mysql-master ~]# ip a|grep eth0|grep inet|cut -d' ' -f6|cut -d'/ ...
- pod install速度慢解决方案
相信大家已经感受到pod install速度越来越慢了,网上提供了几种解决方案,但是都没有完全解决速度慢的问题. 使用国内镜像的Specs 在pod install时使用命令pod install - ...
- Python高级学习笔记
Python高级学习笔记,此笔记中包含Linux操作系统.Html+CSS+JS.网络协议等. 所有思维导图为本人亲手所画,请勿用于商用. 大哥们,求点赞哦. 第一天笔记:链接 第二天笔记:链接 第三 ...
- 简单理解http协议的特性
http协议一种数据传输的规范,像我们的在发送数据的时候,我们无法保证发送与接收的类型是一致的,它就保证了我们传输的同一个类型数据. 特性: 1.灵活:我们不管传输什么数据,图片,文件,文字,都可以进 ...
- 用Selenium自动化测试时,让ChromeDriver中不显示“正受到自动测试软件控制”
背景: 在用Selenium做自动化测试的时候,默认ChromeDriver是会提示“Chrom正受到自动测试软件控制”的.如下图这样.但我们有些场景下,不希望这个提示出现.本文探索了几种语言去掉这个 ...
- react-native-splash-screen 隐藏statusbar
目录 android ios android android/app/src/main/java/项目名/MainActivity.java @Override protected void onCr ...
- 学习Java必看的Java书籍(高清中文最新版附下载链接)
今年下半年,我正式系统地学习Java(之前学习C++).最近把学习Java所用到的书籍整理了一下,分享出来,希望对正在学习或准备学习Java的人有一定的帮助. 关于Java的学习路线,和IDE工具In ...
- ARTS-S k8s常用命令
本地访问minikube的docker eval $(minikube docker-env) 删除statefulset kubectl delete statefulset web --casca ...
- [Input-number]数字输入框组件
需求 加.减按钮 初始值 最大.最小值 数值改变时,触发一个自定义事件来通知父组件 目录文件 index.html 入口页 input-number.js 数字输入框组件 index.js 根实例 实 ...
- React中setState学习总结
react中setState方法到底是异步还是同步,其实这个是分在什么条件下是异步或者同步. 1.先来回顾一下react组件中改变state的几种方式: import React, { Compone ...