python中的练习 创建一个包含五个固定值数值的列表或元祖,输出他们的
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中的练习 创建一个包含五个固定值数值的列表或元祖,输出他们的相关的知识,希望对你有一定的参考价值。
python中的练习
创建一个包含五个固定值数值的列表或元祖,输出他们的和。然后修改代码分别接受用户的数值,分别用while和for来实现
楼主你好!
逻辑比较简单,直接上代码:
# -*- coding: utf-8 -*-def sum_tuple():
'''固定元组求和'''
target_tuple = (0, 5, 10, 15, 20)
print u'固定元组为', str(target_tuple), u'求和结果', sum(target_tuple)
def while_input():
'''while输入求和'''
target_list = []
while len(target_list) < 5:
print u'请输入第%s个数字:'%(len(target_list)+1)
try:
current_num = int(input())
target_list.append(current_num)
except:
print u'请输入正确的数字'
print u'您输入的值为', str(target_list), u'求和结果', sum(target_list)
def for_input():
'''for输入求和'''
target_list = []
for i in xrange(5):
print u'请输入第%s个数字:'%(i+1)
try:
current_num = int(input())
target_list.append(current_num)
except:
'''注意,在for循环中输入错误的数字,
会导致求和列表长度减少'''
print u'请输入正确的数字'
print u'您输入的值为', str(target_list), u'求和结果', sum(target_list)
if __name__ == '__main__':
'''在这里填写你想要测试的方法'''
for_input() 参考技术A list2 = list(map(int, input("please input 5 numbers[用空格隔开]: ").split()))
sum = 0
for i in list2:
sum += i
print(sum)
sum = 0
while list2:
sum += list2.pop()
print(sum)
python核心编程第二版练习题答案
2-5
#写一个while循环,输出整型为0~10
a=0
while a<11:
print a
a+=1
#写一个for循环重复以上操作
for i in range(11):
print i
2-6
#条件判断,判断一个数正数还是负数,或者是0.开始先用固定的数值,然后修改你的代码支持用户输入数值进行判断
a=int(raw_input("please input a number:"))
#a=6
if a>0:
print"this number is positive!"
elif a<0:
print"this number is negative!"
else:
print"this number is zero!"
2-7
#从用户那里接受一个字符串输入,然后逐字符显示该字符串,用for循环实现
a=raw_input("please input a string:")
for i in a:
print i
#同样再用while循环实现上述
a=raw_input("please input a string:")
i=0
while i<len(a):
print a[i]
i+=1
2-8
#创建一个包含五个固定数值的列表或元祖,输出他们的和,然后修改代码为接受用户输入数值,分别使用while和for循环实现
#print (reduce(lambda x,y:x+y,range(1,5))) 最简单的一种算法
#for循环:
a=input("please input a list or a tuple:")
#a=[1,2,3,4]
s=0
for i in range(len(a)):
s+=a[i]
print s
#while循环:
a=input("please input a list or a tuple:")
#a=[1,2,3,4]
i=0
s=0
while i<len(a):
s+=a[i]
i+=1
print s
2-9 循环和操作符,创建一个包含五个固定数值的列表或元组,输出他们的平均值
#for循环
a=[1,2,3]
s=0
for i in range(len(a)):
s+=a[i]
print float(s/len(a))
#while 循环
a=input("please input a list or a tuple:")
i=0
s=0
while i<len(a):
s+=a[i]
i+=1
print float(s/len(a))
2-10 带循环和条件判断的用户输入,使用raw_input()函数来提示用户输入一个1和100之间的数,如果用户输入的数满足这个条件,显示成功并退出,否则显示一个错误信息然后再次提示用户输入数值,知道满足条件为止。
while 1:
a=int(raw_input("please input a number:"))
if 1<=a<=100:
print"success!"
break
else:
print"input error!plese input again!"
continue
2-11
#写一个带文本菜单的程序,菜单项如下:(1)取5个数的和;(2)取5个数的平均值;(X)退出,由用户做一个选择,然后执行相应的功能
def Menu():
print"1.get sum of five numbers"
print"2.get average of five numbers"
print"x.Exit"
def Sum():
l=[1,2,3,4,5]
sum=0
for i in l:
sum+=i
i+=1
return sum
def Ave():
sum=Sum()
ave=float(sum)/5
return ave
while True:
Menu()
choice=input("please choice one:")
if choice==1:
sum=Sum()
print"sum is %d"%sum
elif choice==2:
ave=Ave()
print"average is %f"%ave
elif choice==‘x‘:
break
else:
print"wrong choice,please choose again!"
2-15
#让用户输入3个数值并将分别将他们保存到3个不同的变量中,不使用列表或排序算法
#从小到大
while True:
num1=int(raw_input("please input num1:"))
num2=int(raw_input("please input num2:"))
num3=int(raw_input("please input num3:"))
if num1>num2:
tmp=num1
num1=num2
num2=tmp
if num2>num3:
tmp=num2
num2=num3
num3=tmp
if num1>num2:
tmp=num1
num1=num2
num2=tmp
print "from min to max is %d,%d,%d"%(num1,num2,num3)
#从大到小:
while True:
num1=int(raw_input("please input num1:"))
num2=int(raw_input("please input num2:"))
num3=int(raw_input("please input num3:"))
if num1<num2:
tmp=num1
num1=num2
num2=tmp
if num2<num3:
tmp=num2
num2=num3
num3=tmp
if num1<num2:
tmp=num1
num1=num2
num2=tmp
print "from max to min is %d,%d,%d"%(num1,num2,num3)
以上是关于python中的练习 创建一个包含五个固定值数值的列表或元祖,输出他们的的主要内容,如果未能解决你的问题,请参考以下文章
Leetcode练习(Python):数组类:第27题:给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度