Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我想在'|';_Python_Slice - Fatal编程技术网

Python 我想在'|';

Python 我想在'|';,python,slice,Python,Slice,我想在某一点切割不同的字符串。具体来说,我想在第一个“|”之前打印sring的部分 data=' xbox 360 | 10000 | NEW ' length=len(data) for i in range(length): if (data[i]=='|'): product=data[:i] print(product) 但是,当我运行代码时,结果是: xbox 360|10000 我只想让它显示: xbox 360您所需要的就是.split(),如下所示:

我想在某一点切割不同的字符串。具体来说,我想在第一个“|”之前打印sring的部分

data=' xbox 360 | 10000 | NEW '
length=len(data)

for i in range(length):
    if (data[i]=='|'):
        product=data[:i]

print(product)
但是,当我运行代码时,结果是:

xbox 360|10000

我只想让它显示:


xbox 360

您所需要的就是
.split()
,如下所示:

the_stuff = data.split('|')[0]
这将使用
|
作为分隔符分割行,并在元组中给出结果,
[0]
只返回元组中第一个偏移量,即第一个
|
之前的所有内容

如果您想要全部3个组件,则只需:

tuple_of_the_stuff = data.split('|')
现在你有了一个元组:
('xbox360','10000','NEW')


编辑:如下面所建议的,您可以使用
.strip()
在某个点清理元组的结果值。

数据.split(“|”)[0]。strip()
您应该包括
strip()
,并删除前导和尾随空格。同意。我只是想在某个时候,他们必须自己做一些工作或者
.split(“|”)
您的评论帮助很大,您给我的解决方案也很有效,但我仍然不明白为什么代码没有在第一个“|”处停止。在python中,
.split()
将在每次出现分隔符时分隔一个字符串。您可以使用第二个参数更改默认行为。例如,
var.split(“|”,1)
将在第一个
|
字符处拆分字符串
var
,得到一个包含两个字符串的元组。