作者kse49307 (沉默)
看板Python
标题[问题] 将list输出成单字符
时间Sun Oct 9 14:15:05 2016
刚踏入python的世界 版本是python 3
在练习input三数 print成依顺序排列的3数
但是卡在答案输出格式不对
我写的程式码如下
a = (input())
s1,s2,s3 = a.split()
s1,s2,s3 = int(s1),int(s2),int(s3)
a = [s1,s2,s3]
a.sort()
print (a)
输入 1 5 2 要print出 1 2 5
现在写的语法会变成[1,2,5]
多了[]跟,
卡在这个部份两天了 程度还很差只会很基础的语法
有爬文也有上网看过相关资料
大部分看到的语法都还没学到(不理解用法)
推测应该是要把list 转输出成 3个单字 再print
但不知道应该怎麽转译
希望可以在这里获得指导
可以不用跟我说答案没关系,我只是需要有人告诉我我错在哪部分
我才知道要从哪里重新思考
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.227.230.84
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1475993708.A.085.html
1F:→ devil1004: 我也是新手 是第4行 排列顺序错误吗10/09 14:27
排列应该是正确的,因为答案是对的,只是格式不对(?
※ 编辑: kse49307 (36.227.230.84), 10/09/2016 14:41:56
2F:→ alibuda174: 没有错啊,a是list,会以[]包住里头的东西10/09 14:41
3F:→ alibuda174: 试试 print(a[0], a[1], a[2])10/09 14:42
成功了,Print出1 2 5
确实我没想到可以单一输出位置里的单元
感谢指导!
4F:推 BlueKidds: a你设定是list, print出来就是list10/09 14:42
※ 编辑: kse49307 (36.227.230.84), 10/09/2016 14:44:35
5F:→ alibuda174: 试试 for x in a: print(x, end=' ')10/09 14:44
这个语法会变成125,少了单元间的空格
※ 编辑: kse49307 (36.227.230.84), 10/09/2016 14:46:34
6F:→ alibuda174: s1,s2,s3 = a; print(s1, s2, s3)10/09 14:45
这个答案正确! 真的很感谢大家愿意指导
※ 编辑: kse49307 (36.227.230.84), 10/09/2016 14:47:59
7F:→ alibuda174: print(x, end=' ') 其中' '里有一个空格喔 10/09 14:51
8F:→ kse49307: 原来是这样,那答案一样是正确的,感谢! 10/09 15:36
9F:→ Typebrook: 内建的*运算符明明很棒... print(*a) 10/09 16:59
10F:推 Yshuan: print ' '.join(str(a) 10/09 18:02
11F:→ alibuda174: _ = [print(x, end=' ') for x in a] 10/09 18:35
12F:→ alibuda174: print(' '.join(str(x) for x in a)) 10/09 18:35
13F:→ alibuda174: print(''.join(map(lambda x: str(x)+' ', a))) 10/09 18:37
14F:→ alibuda174: (lambda a, s, p: print(s) if a==[] else p(a[1:], 10/09 18:52
15F:→ alibuda174: s+(' ' if s else '')+str(a[0]), p) 10/09 18:53
16F:→ alibuda174: )(a, '', lambda a, s, p: print(s) if a==[] else p( 10/09 18:53
17F:→ alibuda174: a[1:], s+(' ' if s else '')+str(a[0]), p)) 10/09 18:53
18F:推 tsoahans: print(*sorted(int(i) for i in input().split())) 10/10 07:35