Python 从入门到入门基础练习十五题
1、永远的 HelloWorld
print("Hello World")
2、M与N的数学运算:用户输入两个数 M 和 N,其中 N 是整数,计算M 和 N 的5种数学运算结果,并依次输出,结果间用空格分隔。
5种数学运算分别是:M 与 N 的和、M 与 N 的乘积、M 的 N 次幂、M除 N 的余数、M 和 N 中较大的值。
m = eval(input())
n = eval(input())
list = []
list.append(str(m+n))
list.append(str(m*n))
list.append(str(m**n))
list.append(str(m%n))
if m > n:
list.append(str(m))
else:
list.append(str(n))
print(" ".join(tuple(list)))
3、将输入的字符串垂直输出
def Output(string):
for char in string:
print(char)
s = input()
Output(s)
4、计算矩形面积:用户输入矩形的长和宽,计算其面积并输出,结果四舍五入,保留2位小数。
a = eval(input("请输入矩形长度:"))
b = eval(input("请输入矩形宽度:"))
print("面积是:%.2f"%(a*b))
5、计算2的n次方,n由用户输入
a = eval(input())
print(2**a)
6、成绩转换:编写一个学生成绩转换程序,用户输入百分制的学生成绩,成绩大于或等于60的输出“pass”,否则输出“fail”,成绩不四舍五入。
a = eval(input())
if 100 >= a >= 60:
print("pass")
else:
print("fail")
7、完美立方:找到大于1的4个整数满足完美立方等式:a3=b3+c3+d3(例如123=63+83+103)。编写一个程序,对于任意给定的正整数N(N ≤100),寻找所有的四元组(a,b,c,d),满足a3=b3+c3+d3,其中1<a,b,c,d≤N。
n = int(input()) # n范围内的立方数
list_cube = [0] # 用于存储立方数的列表
for i in range(1, n + 1):
list_cube.append(i * i * i)
for a in range(6, n + 1):
for b in range(2, a - 1):
if list_cube[a] < (list_cube[b] + list_cube[b + 1] + list_cube[b + 2]):
break
for c in range(b + 1, a):
if list_cube[a] < (list_cube[b] + list_cube[c] + list_cube[c + 1]):
break
for d in range(c + 1, a):
if list_cube[a] == (list_cube[b] + list_cube[c] + list_cube[d]):
print("Cube=%d,Tripe=(%d,%d,%d)" % (a, b, c, d))
8、货币转换:写一个程序进行货币间币值转换,其中:人民币和美元间汇率固定为:1美元 = 6.78人民币。
程序可以接受人民币或美元输入,转换为美元或人民币输出。人民币采用RMB表示,美元USD表示,符号和数值之间没有空格。
import re
money = input().lower()
tmp=re.findall('usd|rmb',money)
if len(tmp)==0 or len(tmp)>1:
print('wrong')
money=re.sub(tmp[0],'',money)
try:
num=float(money)
if 'usd' in tmp:
print('RMB%.2f'%(num*6.78))
else:
print('USD%.2f'%(num/6.78))
except:
print('wrong')
9、月份缩写:如果有 months = "Jan.Feb.Mar.Apr.May.Jun.Jul.Aug.Sep.Oct.Nov.Dec.",编写一个程序,用户输入一个月份的数字,输出月份的缩写。
months = "Jan.Feb.Mar.Apr.May.Jun.Jul.Aug.Sep.Oct.Nov.Dec."
n = input()
#(每个月份的数字-1)*4就是这个月份简写的开始索引,截取4个字符
index = (int(n)-1)*4
month = months[index: index + 4]
print(month)
10、温度转换:编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。
转换算法如下:(C表示摄氏度、F表示华氏度)
C = ( F - 32 ) / 1.8
F = C * 1.8 + 32
要求如下:
(1) 输入输出的摄氏度采用大写字母C开头,温度可以是整数或小数,如:C12.34指摄氏度12.34度;
(2) 输入输出的华氏度采用大写字母F开头,温度可以是整数或小数,如:F87.65指摄氏度87.65度;
(3) 不考虑异常输入的问题,输出保留小数点后两位;
Temperature = input()
if Temperature[0] in ['F']:
C = (eval(Temperature[1:])-32)/1.8
print("C{:.2f}".format(C))
else:
F = 1.8*eval(Temperature[1:])+32
print("F{:.2f}".format(F))
11、汇率兑换:按照1美元=6人民币的汇率来编写一个美元与人民币的双向兑换程序
money = input()
if money[-1] in ['$']:
m = 6*eval(money[:-1])
print("{:.2f}R".format(m))
else:
if money[-1] in ['R']:
m = eval(money[:-1])/6
print("{:.2f}$".format(m))
else:
print("输入错误!")
12、恺撒密码:凯撒密码是古罗马凯撒大帝用来对军事情报进行加解密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即,字母表的对应关系如下:
原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
密文:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
对于原文字符P,其密文字符C满足如下条件:C=(P+3) mod 26
上述是凯撒密码的加密方法,解密方法反之,即:P=(C-3) mod 26
假设用户可能使用的输入仅包含小写字母a~z和空格,请编写一个程序,对输入字符串进行凯撒密码加密,直接输出结果,其中空格不用进行加密处理。
sr1 = "abcdefghijklmnopqrstuvwxyz"
sr2 = sr1.upper()
sr = sr1 + sr1 + sr2 + sr2
in_str = input("")
out_str = ""
for j in in_str:
if j == " ":
out_str = out_str + " "
continue
i = sr.find(j)
if(i > -1):
out_str = out_str + sr[i+3]
print(out_str)
13、个人所得税计算:个人所得税采用“超额累进税率”计算方法,简化公式如下:
缴税 = (个人薪金扣险所得 – 个税免征额)* 税率
其中,个税免征额为3500元,税率根据应纳税额数量而不同,如下图所示:
注意:“应纳税额”为:个人薪金扣险所得 – 个税免征额
请编写一个程序根据用户输入计算个人所得税,用户输入是个人薪金扣险所得。
约定用户输入为以人民币元为单位的整数。
m = int(input())
ans = 0
if m > 3500:
m1 = m - 3500
if m1 < 1500:
ans = 0.03 * m1
elif m1 < 4500:
ans = 0.1 * m1
elif m1 < 9000:
ans = 0.2 * m1
elif m1 < 35000:
ans = 0.25 * m1
elif m1 < 55000:
ans = 0.3 * m1
elif m1 < 80000:
ans = 0.35 * m1
else:
ans = 0.45 * m1
else:
ans = 0
print("%.0f"%ans)
14、3位水仙花数计算:“3位水仙花数”是指一个三位整数,其各位数字的3次方和等于该数本身。例如:ABC是一个“3位水仙花数”,则:A的3次方+B的3次方+C的3次方 = ABC。
请按照从小到大的顺序输出所有的3位水仙花数,请用一个“逗号+空格”分隔输出结果。
import math
list = []
for i in range(100, 1000):
x = math.floor(i / 100)
y = math.floor((i - x * 100) / 10)
z = i - math.floor(i / 10) * 10
if i == x ** 3 + y ** 3 + z ** 3:
list.append(str(i))
print(", ".join(tuple(list)))
15、统计下列英文诗歌:
All that doth flow we cannot liquid name
Or else would fire and water be the same;
But that is liquid which is moist and wet
Fire that property can never get.
Then 'tis not cold that doth the fire put out
But 'tis the wet that makes it die, no doubt.
编程实现对纽卡斯伯爵的不朽名篇What Is Liquid的统计工作。这首诗(1)有多少个字符?(计入空格和换行符)(2)判断是否以All开头?(3)判断是否以That's all, folks!结尾?(4)第一次和最后一次出现单词the的位置(偏移量)。(5)the出现的总次数?(6)判断诗中出现的所有字符是否都是字母和数字?
s = "All that doth flow we cannot liquid name Or else would fire and water be the same;But that is liquid which is moist and wet Fire that property can never get. Then 'tis not cold that doth the fire put out But 'tis the wet that makes it die, no doubt. "
print("这首词总共有:" + str(len(s)) + "个字符串")
print("这首诗是否以All开头:",s.startswith('All'))
print("这首诗是否以That\'s all, folks!结尾:",s.endswith('That\'s all, folks!'))
print("第一次出现单词the的位置:",s.find(' the '))
print("最后一次出现单词the的位置:",s.rfind(' the '))
print("the在诗中出现的总次数:",s.count(' the '))
print("是否诗中出现的所有字符都是字母和数字:",s.isalnum())
扫描关注微信公众号,了解更多
Python 从入门到入门基础练习十五题的更多相关文章
- Bootstrap <基础二十五>警告(Alerts)
警告(Alerts)以及 Bootstrap 所提供的用于警告的 class.警告(Alerts)向用户提供了一种定义消息样式的方式.它们为典型的用户操作提供了上下文信息反馈. 您可以为警告框添加一个 ...
- Java15-java语法基础(十五)——内部类
java16-java语法基础(十五)内部类 一.内部类: 可以在一个类的内部定义另一个类,这种类称为内部类. 二.内部类分为两种类型: 1.静态内部类: 静态内部类是一个具有static修饰词的类, ...
- Java基础之十五 泛型
第十五章 泛型 一般的类和方法,只能使用具体的类型:要么是基本类型,要么是自定义类型.如果要编写可以应用于多种类型的代码,这种刻板的限制对代码的束缚就会很大. 在面对对象编程语言中,多态算是一种泛化机 ...
- Py修行路 python基础 (十五)面向对象编程 继承 组合 接口和抽象类
一.前提回忆: 1.类是用来描述某一类的事物,类的对象就是这一类事物中的一个个体.是事物就要有属性,属性分为 1:数据属性:就是变量 2:函数属性:就是函数,在面向对象里通常称为方法 注意:类和对象均 ...
- Python基础(十五)
今日主要内容 模块初识 模块导入 模块路径 自定义模块 内置模块(标准库) time datetime random sys os funtools 一.模块初识 (一)什么是模块 其实我们创建的每一 ...
- Python基础(十五):Python的3种字符串格式化,做个超全对比!
有时候,为了更方便.灵活的运用字符串.在Python中,正好有3种方式,支持格式化字符串的输出 . 3种字符串格式化工具的简单介绍 python2.5版本之前,我们使用的是老式字符串格式化输出%s. ...
- Redis入门到高可用(十五)—— GEO
一.简介 二.应用场景 三.API 1.geoadd 2.geopos 3.geodist 4.georadius 四.相关说明
- Redis入门到高可用(十五)—— HyperLogLog
一.简介 二.API Demo 三.使用经验
- Hadoop MapReduce编程 API入门系列之最短路径(十五)
不多说,直接上代码. ======================================= Iteration: 1= Input path: out/shortestpath/input. ...
随机推荐
- spring注解-@Transactional事务几点注意
这里面有几点需要大家留意:A. 一个功能是否要事务,必须纳入设计.编码考虑.不能仅仅完成了基本功能就ok.B. 如果加了事务,必须做好开发环境测试(测试环境也尽量触发异常.测试回滚),确保事务生效.C ...
- Android Stdio 如何自定义生成APK的名称
Android Stdio自动默认生成的app的名称都是app-release或者app-debug,生成完后还要手动更改apk的名称,很是麻烦. 自定义生成APK的名称的方法:在\app\build ...
- windows转mac-开发环境搭建(二):mac上java环境搭建
1.首先下载jdk,地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2.安 ...
- 如何学习 MFC ?
//std::string => CString std::string srcString = "Hello World!"; CString dstString = CS ...
- 使用flask_sqlalchemy
首先引用一下廖雪峰Python教程里关于sqlalchemy的话, 这里我们要讲的是flask_sqlalchemy的用法. 1. 安装 用pip安装即可, 进入cmd控制台输入 pip instal ...
- OSQA的配置
1.安装Python,我安装的是python 2.7.3 2.安装setuptools 下载setuptools,并安装 安装好以后,在pyton2.7/scripts的路径下将会有easy_inst ...
- Jetty添加Filter过滤器
1.Jetty嵌入到Spring项目 try { Server server = new Server(8080); WebAppContext context = new WebAppContext ...
- vxworks下硬盘测速程序
void speed(int buflen,int mod){/*int mod = 0;*/ int len=50; FILE *fp; unsigned int i=0,j=0,tmp,tmp2; ...
- 图像处理------Canny边缘检测
一:历史 Canny边缘检测算法是1986年有John F. Canny开发出来一种基于图像梯度计算的边缘 检测算法,同时Canny本人对计算图像边缘提取学科的发展也是做出了很多的贡献.尽 管至今已经 ...
- iOS - Mac 常用快捷键
前言 可以按下组合键来实现通常需要鼠标.触控板或其他输入设备才能完成的操作. 要使用键盘快捷键,需按住一个或多个修饰键,同时按快捷键的最后一个键.例如,要使用快捷键 Command-C(拷贝),请按住 ...