2015-07-20 106 views
3

我编写了一个代码来列出我的Linux服务器中的所有组件。该列表存储在一个文件中。我将逐行准备,并且必须将版本中的组件分成两部分并存储在不同的字符串中。如何在第一次出现字符时将字符串拆分为两个

例如:我的一行显示console-3.45.1-0,其中console是组件,3.45.1-0是版本。如果我使用拆分,

print components[i].split('-') 

我可以看到['console', '3.45.1', '0\r\r']这不是我想要的。如何在第一次出现' - '时将其分成两个字符串?

回答

8

str.split需要maxsplit参数,通过1到仅分裂在第一-

print components[i].rstrip().split('-',1) 

要输出存储在两个变量:

In [7]: s = "console-3.45.1-0" 

In [8]: a,b = s.split("-",1) 

In [9]: a 
Out[9]: 'console' 

In [10]: b 
Out[10]: '3.45.1-0' 
+0

呀。这工作。但我怎么能存储到2个不同的字符串? –

+0

@Roshanr,如果你想保留''\ r \ r''删除rstrip调用 –

+0

@Roshanr,补充说明如何存储输出 –

相关问题