在python中如何将数字放入列表中

在python中如何将数字放入列表中,python,Python,我有这样的数字: -1 1 2 3 -1 1 3 2 我想把这个数字放在列表中,比如[-1,1,2,3,-1,1,3,2],然后从列表中删除-1 像这样 >>> a = [-1, 1, 2, 3, -1, 1, 3, 2] >>> a = [x for x in a if x != -1] >>> a [1, 2, 3, 1, 3, 2] 代码如下: In [1]: [int(x) for x in "-1 1 2 3 -1 1 3 2"

我有这样的数字:

-1
1
2
3
-1
1
3
2
我想把这个数字放在列表中,比如
[-1,1,2,3,-1,1,3,2]
,然后从列表中删除
-1

像这样

>>> a = [-1, 1, 2, 3, -1, 1, 3, 2]
>>> a = [x for x in a if x != -1]
>>> a
[1, 2, 3, 1, 3, 2]
代码如下:

In [1]: [int(x) for x in "-1 1 2 3 -1 1 3 2".split() if x!="-1"]
Out[1]: [1, 2, 3, 1, 3, 2]

只是agf答案的一个小改进。删除换行符不需要修改索引。而是使用strip方法(它也适用于所有类型的线路终端,而不仅仅是Unix“\n”):


这些数字是从哪里来的?键盘输入,一个文件,…?如果你要删除它,为什么要放-1?这个问题缺少一些“上下文”。请更具体地说明你想要什么。这是你想写的通用例程吗?你只需要从任何给定的列表中删除“-1”出现的次数吗?我从下面的代码中得到这些数字:x=[5,6,7,8,9,10,11,12,13]y=[5,6,7,8,9,10,11,12,13]对于x中的I:对于y中的j:x,elist=gt。最短路径(g,g,顶点(I),g,顶点(j))xx=[str(v)for v in x]print len xx(xx)-1。因此,数字以列的形式出现,我希望她以不带-1的列表的形式出现。在海报更改输入数字的格式之前,此代码可以正常工作。谢谢,但是我如何将数字放在列表中而不是列中?谢谢,但是我如何将数字放在列表中而不是列中?谢谢,但是我怎样才能把数字放在列表而不是列中呢?谢谢,但是我怎样才能把数字放在列表而不是列中呢?
In [1]: [int(x) for x in "-1 1 2 3 -1 1 3 2".split() if x!="-1"]
Out[1]: [1, 2, 3, 1, 3, 2]
intlist = [int(x.strip()) for x in open(filename) if x.strip() != '-1']