wangxishi

2021-01-20   阅读量: 9860

Python 大数据

python练习【1】

扫码加入数据分析学习群

问题:通过键盘输入一系列值,输入0则表示输入结束,将这些值(不包含0)建立为一个列表,然后再输出该列表的各个元素。

解答:我从网上找+自己改的代码:

list = []
for int in range(10):
    a = input('请输入第' + str(int + 1) + '个元素:')
    if a == '0':
        print(list)
    else:
        print(list.append(a))

想问下有没有更好的答案


添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
60.8214 1 10 关注作者 收藏

评论(10)

wangxishi
2021-01-21

好的 谢谢啦~

0.0000 0 0 回复
ermutuxia
2021-01-21

是你理解的意思。跳出while循环有两种情况,

第一种情况就是while后面的条件不满足了,但是从这个题目中来看,while后面是固定的常数True,所以这个条件一直满足。

第二种情况是执行循环的时候遇到break,直接跳出这个循环。

现在我们就是属于第二种情况


0.4236 1 0 回复
wangxishi
2021-01-21

可以这么理解吗,就是如果没有遇到"0",那么状态就永远是while True的状态,循环会一直进行下去,直到输入“0”break了 ,这个时候后就是False的状态了,这个while true 不成立,就会打破循环?

150.0000 1 0 回复
ermutuxia
2021-01-21

while True的意思是循环一直执行(while后面的条件是一个True),除非遇到break语句,才会跳出循环

0.4236 1 0 回复
ermutuxia
2021-01-21

int1变量用来显示你输入的第几个有效数,先设定初始值为0,然后每执行一次循环就加1

0.4236 1 0 回复
wangxishi
2021-01-20

请教下这个问题:


问下为什么要设置

int1=0
和
while True:

这两行呢


55.7549 1 0 回复
wangxishi
2021-01-20

我把代码改成了这样,但是为什么出不来列表呢

list1 = []
int1=0
while True:
    int1=int1+1
    a = input('请输入第' + str(int1) + '个元素:')
    if a == '0':
        print("结束")
        break
    else:
        print(list1.append(a))


55.7549 1 0 回复
HXAI100049
2021-01-20


0.0000 0 0 回复
wangxishi
2021-01-20

这个问题我知道了,代码如下:

list1 = []
int1=0
while True:
    int1=int1+1
    a = input('请输入第' + str(int1) + '个元素:')
    if a == '0':
        print("结束")
        break
    else:
        print(list1.append(a))
list1


55.7549 1 0 回复
wangxishi
2021-01-20

太好了,我也觉得我自己写的有问题,就是不知道怎么改

问下为什么要设置

int1=0
和
while True:

这两行呢

55.7549 1 0 回复
ermutuxia
2021-01-20
刚才看你代码的时候不够仔细,你写的还有错误的地方,我改了一下结果如下
list1 = []
int1=0
while True:
    int1=int1+1
    a = input('请输入第' + str(int1) + '个元素:')
    if a == '0':
        print("结束")
        break
    else:
        list1.append(a)


0.4236 1 0 回复
ermutuxia
2021-01-20

感觉你这个应该已经是很简洁的代码了,估计没有什么更好的的代码了

我给你修改了一下如下

list1 = []

while True:

a = input('请输入第' + str(int + 1) + '个元素:')

if a == '0':

print("结束")

break

else:

list1.append(a)


一定不要把变量名字定义为list呀,因为list是python自带类,如果将列表名字定义为list,python会进入混乱状态

0.4236 1 0 回复

推荐课程

推荐帖子