Python3:读取输入直到输入了-1

Python3:读取输入直到输入了-1,python,input,Python,Input,在Python中,我希望在输入-1之前读取整数 输入示例: 1, 2, 3, 4, 5, 6, 7, 10, -1 # (Commas indicate new entries) 预期效果: nums = [1,2,3,4,5,6,7,10] 补充说明: 您可以通过列表理解简洁地完成此操作吗?您可以使用while循环 Ex: inVal = input("Enter Num: ") res = [] while int(inVal) != -1: #Break loop if use

在Python中,我希望在输入-1之前读取整数

输入示例:

1, 2, 3, 4, 5, 6, 7, 10, -1 # (Commas indicate new entries)
预期效果:

nums = [1,2,3,4,5,6,7,10]
补充说明:
您可以通过列表理解简洁地完成此操作吗?

您可以使用
while循环

Ex:

inVal = input("Enter Num: ")

res = []
while int(inVal) != -1:    #Break loop if user enters -1
    res.append(inVal)
    inVal = input("Enter Num: ")
print(res)                 #Print user entered numbers

假设您有逗号分隔的值,您可以在以下行中执行操作:

from itertools import takewhile

s = '1,2,3,4,5,6,7,10,6,7,8,20,25,30,40,55,60,-1'

g = takewhile(lambda x: x != '-1', s.split(',')) #generator

list(map(int,g)) # convert str to in

我假设示例输入为单个字符串,以逗号分隔

nums = "1,2,3,4,5,6,7,10,6,7,8,20,25,30,40,55,60,-1"
nums = nums[:nums.index(",-1")].split(",")
nums = [int(x) for x in nums]

这将找到“-1”元素的索引并切断结果。然后列出理解,将所有字符串转换为int,如果您同意将其存储为字符串,则此部分是可选的

试试这段代码。我在这里做的是,我创建了一个空列表,并一直向其添加值,除非输入为-1。希望这对你有帮助

choice = int(input("Enter Numbers: "))
nums = []

while choice!= -1:
 nums.append(choice)
 choice = int(input("Enter Numbers: "))

print(nums)

到目前为止,您尝试了什么?nums=[input()表示范围内的i(int(input())),如果input()!=-1]Python 2或Python 3?Python 3-刚刚编辑的标题清除实际输入中的逗号部分?