python学习-练习题
1、使用while循环输入 1 2 3 4 5 6 8 9 10
# cat lx.py
#!/usr/local/bin/python3.6 #邹姣姣
#使用while循环输入 1 2 3 4 5 6 8 9 10 i = 1
while i < 11:
if i == 7:
print(" ",end=" ") # 可用pass关键字,什么都不执行
else:
print(i,end=" ")
i = i + 1
print(" ")
执行结果:
# ./lx.py
1 2 3 4 5 6 8 9 10
2、求1-100的所有数的和
[root@localhost python3练习]# cat lx1.py
#!/usr/local/bin/python3.6 #邹姣姣
#求1-100的所有数的和
i = 1
sum1 = 0
sum2 = 0 print("while循环1到100的和:")
while i <= 100:
if i != 100:
print(i,end="+")
else:
print(i,end="=")
sum1 = sum1 + i
i = i+1 print(sum1) print("for循环1到100的和:")
for j in range(1,101):
if j != 100:
print(j,end="+") else:
print(j,end="=")
sum2 = sum2 + j
print(sum2)
执行结果:
[root@localhost python3练习]# ./lx1.py
while循环1到100的和:
1+2+3+4+5+6+7+8+9+10+11+12+13+14+15+16+17+18+19+20+21+22+23+24+25+26+27+28+29+30+31+32+33+34+35+36+37+38+39+40+41+42+43+44+45+46+47+48+49+50+51+52+53+54+55+56+57+58+59+60+61+62+63+64+65+66+67+68+69+70+71+72+73+74+75+76+77+78+79+80+81+82+83+84+85+86+87+88+89+90+91+92+93+94+95+96+97+98+99+100=5050
for循环1到100的和:
1+2+3+4+5+6+7+8+9+10+11+12+13+14+15+16+17+18+19+20+21+22+23+24+25+26+27+28+29+30+31+32+33+34+35+36+37+38+39+40+41+42+43+44+45+46+47+48+49+50+51+52+53+54+55+56+57+58+59+60+61+62+63+64+65+66+67+68+69+70+71+72+73+74+75+76+77+78+79+80+81+82+83+84+85+86+87+88+89+90+91+92+93+94+95+96+97+98+99+100=5050
3、输出 1-100 内的所有奇数,输出 1-100 内的所有偶数
[root@localhost python3练习]# cat lx2.py
#!/usr/local/bin/python3.6 #邹姣姣
#输出 1-100 内的所有奇数,偶数 print("1-100内的所有奇数:")
for i in range(1,101):
if i%2 != 0 :
print(i,end=" ") print("\n1-100内的所有偶数:")
for i in range(1,101):
if i%2 == 0 :
print(i,end=" ") print()
执行结果:
[root@localhost python3练习]# ./lx2.py
1-100内的所有奇数:
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99
1-100内的所有偶数:
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100
4、求1-2+3-4+5 ... 99的所有数的和
[root@localhost python3练习]# cat lx3.py
#!/usr/local/bin/python3.6 #邹姣姣
#求1-2+3-4+5 ... 99的所有数的和 i=int(input("请输入需要求和的最终数字:"))
if i%2 == 0:
sum1 = 0 - i / 2
else:
sum1 = i - (i-1) / 2 print("1-2+3-4+5 ... {} 的所有数的和为 {}".format(i,sum1))
执行结果:
[root@localhost python3练习]# ./lx3.py
请输入需要求和的最终数字:99
1-2+3-4+5 ... 99 的所有数的和为 50.0
5、用户登陆(三次机会重试)
[root@localhost python3练习]# cat lx4.py
#!/usr/local/bin/python3.6 #邹姣姣
#用户登陆(三次机会重试) username='zoujiaojiao'
password=''
i = 0
while i < 3:
name=input("请输入登录账户:")
if name != 'zoujiaojiao':
print("没有此用户")
else:
pword=input("请输入密码:")
if pword != '':
print("密码错误!")
else:
print("登录成功!")
break
i = i + 1
print(" ")
执行结果:
[root@localhost python3练习]# ./lx4.py
请输入登录账户:zoujiaojiao
请输入密码:1
密码错误!
请输入登录账户:zoujiaojiao
请输入密码:12345678
登录成功!
[root@localhost python3练习]# ./lx4.py
请输入登录账户:zoujiaojiao
请输入密码:1
密码错误!
请输入登录账户:z
没有此用户
请输入登录账户:zoujiaojiao
请输入密码:3
密码错误!
6、元素分类
有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}
[root@localhost python3练习]# cat lx5.py
#!/usr/local/bin/python3.6 #邹姣姣
#有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。 li = [11, 22, 33, 55, 66, 44, 77, 88, 99, 100] #for循环找出数值,加入到字典中
li1 = []
li2 = []
dic = {}
for i in li:
if i > 66:
li1.append(i)
elif i < 66:
li2.append(i)
dic.update(k1=li1, k2=li2)
print("dic:",dic) #用if字句做个过滤,将大于66和小于66的进行分类后加入到字典中
dic1={}
li3 = [ i for i in li if i > 66]
li4 = [ i for i in li if i < 66]
dic1.update(k1=li3, k2=li4)
print("dic1:",dic1)
执行结果:
[root@localhost python3练习]# ./lx5.py
dic: {'k1': [77, 88, 99, 100], 'k2': [11, 22, 33, 55, 44]}
dic1: {'k1': [77, 88, 99, 100], 'k2': [11, 22, 33, 55, 44]}
7、查找
[root@localhost python3练习]# cat lx6.py
#!/usr/local/bin/python3.6 #邹姣姣
#查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。 li = ["alec", " Aric", "Alex", "Tony", "rain"]
tu = ("alec", " aric", "Alex", "Tony", "rain")
dic = {'k1': "alex", 'k2': ' aric', "k3": "Alex", "k4": "Tony"}
print("li元素处理情况:")
li2 = [li2.strip() for li2 in li]
for s in li2:
if s.startswith("a") or s.startswith("A") and s.endswith("c"):
print(s)
print(li2) print("tu元素处理情况:")
li3 = list(tu)
li4 = [li4.strip() for li4 in li3]
for s in li4:
if s.startswith("a") or s.startswith("A") and s.endswith("c"):
print(s)
print(tuple(li4)) print("dic元素处理情况:")
dic2 = {}
for i,v in dic.items():
v=v.strip()
dic2.setdefault(i,v)
if v.startswith("a") or v.startswith("A") and v.endswith("c"):
print(i,":",v)
print(dic2)
执行结果:
[root@localhost python3练习]# ./lx6.py
li元素处理情况:
alec
Aric
['alec', 'Aric', 'Alex', 'Tony', 'rain']
tu元素处理情况:
alec
aric
('alec', 'aric', 'Alex', 'Tony', 'rain')
dic元素处理情况:
k1 : alex
k2 : aric
{'k1': 'alex', 'k2': 'aric', 'k3': 'Alex', 'k4': 'Tony'}
[root@localhost python3练习]# cat lx7.py
#!/usr/local/bin/python3.6 #邹姣姣
#输出商品列表,用户输入序号,显示用户选中的商品 li = ["手机", "电脑", '鼠标垫', '游艇']
count = 1
print("商场有以下商品:")
for i in li:
print("{} : {}".format(count,i))
count = count + 1 n = int(input("请输入序号:"))
print(li[n-1])
执行结果:
[root@localhost python3练习]# ./lx7.py
商场有以下商品:
1 : 手机
2 : 电脑
3 : 鼠标垫
4 : 游艇
请输入序号:4
游艇
功能要求:
- 要求用户输入总资产,例如:2000
- 显示商品列表,让用户根据序号选择商品,加入购物车
- 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
- 附加:可充值、某商品移除购物车
[root@localhost python3练习]# cat lx8.py
#!/usr/local/bin/python3.6 #邹姣姣
#功能要求:
#
#要求用户输入总资产,例如:2000
#显示商品列表,让用户根据序号选择商品,加入购物车
#购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
#附加:可充值、某商品移除购物车
# li = [["手机",3000], ["电脑",5000], ['鼠标垫',20], ['游艇',300000]]
count = 1
money = int(input("请输入总资产:"))
shopping_cart = [] print("商场有以下商品:")
for i in li:
print("{} : {} 价格 {} 元".format(count,i[0],i[1]))
count = count + 1 print("选择商品序列号加入购物车,选择完毕请输入ok")
n = 0
while str(n) != "ok":
n = input()
if n != "ok":
shopping_cart.append(li[int(n) - 1])
print("已经加入购物车的商品:{}".format([x[0] for x in shopping_cart])) print("选择商品序列号将该商品移除购物车,移除完毕请输入ok")
nn = 0
while str(nn) != "ok":
nn = input()
if nn != "ok":
del shopping_cart[int(nn)-1]
print("已经加入购物车的商品:{}".format([x[0] for x in shopping_cart])) v = 0
for j in li:
j = j[1]
v = v + int(j)
print("商品总价:{}".format(v)) mm = 0
if money - v > 0:
print("购买成功!")
print("购物车已经清空!")
shopping_cart.clear()
else:
nnn = input("账户余额不足!充值请输入ok后进行充值")
if nnn == "ok":
mm = int(input("充值金额:"))
print("账户总资产:{}".format(money + mm))
执行结果:
[root@localhost python3练习]# ./lx8.py
请输入总资产:1234
商场有以下商品:
1 : 手机 价格 3000 元
2 : 电脑 价格 5000 元
3 : 鼠标垫 价格 20 元
4 : 游艇 价格 300000 元
选择商品序列号加入购物车,选择完毕请输入ok
1
2
ok
已经加入购物车的商品:['手机', '电脑']
选择商品序列号将该商品移除购物车,移除完毕请输入ok
1
ok
已经加入购物车的商品:['电脑']
商品总价:308020
账户余额不足!充值请输入ok后进行充值ok
充值金额:10000
账户总资产:11234
python学习-练习题的更多相关文章
- python学习——练习题(10)
""" 题目:暂停一秒输出,并格式化当前时间. """ import sys import time def answer1(): &quo ...
- python学习——练习题(9)
""" 题目:暂停一秒输出. 程序分析:使用 time 模块的 sleep() 函数. http://www.runoob.com/python/python-date- ...
- python学习——练习题(6)
""" 题目:斐波那契数列. 程序分析:斐波那契数列(Fibonacci sequence),又称黄金分割数列,指的是这样一个数列:0.1.1.2.3.5.8.13.21 ...
- python学习——练习题(4)
""" 题目:输入某年某月某日,判断这一天是这一年的第几天? """ import datetime import time from fu ...
- python学习——练习题(1)
""" 题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? """ import itertools d ...
- python学习——练习题(13)
""" 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个" ...
- python学习——练习题(12)
""" 题目:判断101-200之间有多少个素数,并输出所有素数. 质数(prime number)又称素数,有无限个. 质数定义为在大于1的自然数中,除了1和它本身以外 ...
- python学习——练习题(11)
""" 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1 1 2 ...
- python学习——练习题(8)
""" 题目:输出 9*9 乘法口诀表. """ def answer1(): """ 自己用最普通的双重循环 ...
- python学习——练习题(7)
""" 题目:将一个列表的数据复制到另一个列表中. """ import copy def validate(a, b): "&q ...
随机推荐
- Unreal Engine 4 系列教程 Part 3:材质教程
.katex { display: block; text-align: center; white-space: nowrap; } .katex-display > .katex > ...
- JAVA中JDK开发环搭的搭建,jvm jre
1.JDK的下载与安装: www.oracle.com 安装需要注意的是:不能把jdk安装到有空格或中文的文件夹中,建议大家在某个目录下创建一个JavaWeb的文件夹,然后把所学的java所有内容(后 ...
- Cocos2d-x 学习笔记(14.2) EventListener _paused _isEnabled _isRegistered
监听器3个bool类型成员变量. 监听器能设置是否能够接收事件. 能随时接收事件进行处理,此时把它看做工作状态,需要满足条件: _paused = false; _isEnabled ...
- CSP考场Emacs使用指南[原创]
前言: 据说,CSP考试,之后不再支持windows了呢. windows用户真得劲! 那用什么系统? Ubuntu上场了 Ubuntu编译指南 进入Ubuntu系统,在你想存的文件夹中新建一个空白文 ...
- 学习了解Shiro框架
有关Shiro安全框架 实现权限的几种方式 1)通过表来实现 2)shiro框架 3)Spring Security框架 shiro有哪些主要功能 1.授权 访问控制的过程,即确定谁有权访问 2.身份 ...
- 使用zrender.js绘制体温单(2)
今天我们来画折线图 效果图 以下为模拟数据 [{"time":19,"text":"入\n院\n19\n时\n11\n分","po ...
- JavaWeb EL表达式 key为数值 Map取不到值
JavaWeb EL表达式 key为 Map取不到值 因为JSTL会把Integer,Byte,Short,Charactor都转成Long,这样就取不到值. 参见StackOverFlow的回答 ...
- 关于explorer.exe文件或目录已损坏的问题
2019-5-8 今天由于断电导致电脑异常关机,就出现了开机后屏幕是黑的,只显示鼠标,然后会有警告:explorer.exe目录或文件已损坏. 网上也有各种解决办法,但是都没有清楚,导致捣鼓了半天,首 ...
- 学 Python (Learn Python The Hard Way)
学 Python (Learn Python The Hard Way) Contents: 译者前言 前言:笨办法更简单 习题 0: 准备工作 习题 1: 第一个程序 习题 2: 注释和井号 习题 ...
- JVM内存结构、参数调优和内存泄露分析
1. JVM内存区域和参数配置 1.1 JVM内存结构 Java堆(Heap) Java堆是被所有线程共享的一块内存区域,在虚拟机启动时创建.此内存区域的唯一目的就是存放对象实例,几乎所有的对象实例都 ...