python核心编程第二章练习

2.5 分别使用while和for创建一个循环:
(a)写一个while循环,输出整数从0到10。(要确保是从0到10,而不是从0到9或从1到10)
(b)做同(a)一样的事,不过这次使用range()内建函数。

 a、

a = 0
while a < 11:
    print(a, end = ' ')
    a += 1

 

搞一搞:输入任意整数,始终得到0到10

a = input('请输入一个整数:')
b = int(a)
c = b
while b - (c - 10) > -1 :
    print(c - b, end=' ')
    b -= 1
    

 b、

a = range(11)
for b in a:
    print(b, end=' ')

 

 2.7 循环和字串:从用户那里接受一个字符串输入,然后逐字符显示该字符串。先用while循环实现,然后再用for循环实现。

while:while语句会被不断执行,直到表达式的值变成 0 或 False (表达式常用一个不等式表示)

a = input('请输入一个字符串:') ##充分利用字符串,列表,元组可以用索引值访问其中元素的特点?
b = len(a)
c = 0
while c < b:
    print(a[c])
    c += 1
    

 for: 

a = input('请输入一个字符串:')
for b in a:
    print(b, end=' ')

 

 

2.8  创建一个包含五个固定数值的列表,输出他们的和。然后修改你的代码为接受用户输入数值。分别使用while和for循环实现。

while 循环(参考答案--自己不会做这题-_-!!): 

print('Enter five numbers')
v=[]
i=0
s=0
while i<5:  ##迭代输入5次,出入5个数
    a = input('n%d=' % (i+1))       
    v.extend([int(a)])  ##这里也可以使用append()方法,写成v.append(int(a)),extend()括号内需为列表。
    s = s + v[i]
    i += 1
print(v)
print('sum=%d' % s)
思考的时候没有条理性(应该如下):

 

1、怎么输入一个列表或者元组
2、列表的每一项如何相加:每次迭代一项,然后该项加上前一项----这一点始终没想到。。。

 

for循环:

print('Enter Five Numbers Please!')
v = []
s = 0
for i in range(5): ##这里就不需要像while循环那样,预先定义i了。
    a=input('n%d=' % (i+1))       
    v.extend([int(a)])
    s=s+v[i]
    i += 1
print(v)
print('sum = %d' % s)

 

 

posted @ 2016-11-23 10:32  月光边境Eric  阅读(213)  评论(0编辑  收藏  举报