MPa*_*lla 3 python list-comprehension input multiline python-3.x
这里是Python的新手。我正在使用Python 3处理CodeAbbey的问题,并且希望获得帮助以缩短用户输入的代码。
假设我想从用户那里获得此输入:
3
2 3
4 5
6 7
Run Code Online (Sandbox Code Playgroud)
第一行是案例数,接下来的每一行都是案例本身,带有2个参数。到目前为止,我已经想出了这样做的方法:
N=int(input('How many cases will you calculate?\n'))
print('Input parameters separated by spaces:')
entr = [list(int(x) for x in input().split()) for i in range(N)]
Run Code Online (Sandbox Code Playgroud)
问题是我宁愿询问列表理解中的所有输入,然后分配N = entr [0]。但是,如何在不使用range(N)的情况下使列表理解将输入分成几行?
我试过了:
entr = [list(int(x) for x in input().split()) for x in input()]
Run Code Online (Sandbox Code Playgroud)
但这不起作用。
我没有在列表理解中看到这样做的好处,但是这是一个允许将所有数据复制粘贴到其中的解决方案:
entr = [list(int(x) for x in input().split())
for i in range(int(input()))]
N = len(entr)
Run Code Online (Sandbox Code Playgroud)
您的解决方案非常接近。仅需要给外部迭代一些要迭代的(使用range()
),而不是一个数字。
归档时间: |
|
查看次数: |
4935 次 |
最近记录: |