Python - 字符串中的逗号导致条带问题

时间:2018-04-19 17:30:31

标签: python

我有字符串作为元组,我正试图从中删除引号。如果字符串中没有逗号,则表明它有效。但如果有逗号,则引号仍然存在:

example = [('7-30-17','0x34','"Upload Complete"'),('7-31-17','0x35','"RCM","Interlock error"')]

example = [(x,y,(z.strip('"'))) 
    for x,y,z in example] 

结果是引号部分保留在其中包含逗号的字符串中。第二个元组现在读取RCM","Interlock error而不是RCM, Interlock error

('7-30-17','0x34','Upload Complete')
('7-31-17','0x35','RCM","Interlock error')

任何想法我做错了什么?谢谢!

3 个答案:

答案 0 :(得分:3)

您可以使用列表推导来迭代列表项,对内部元组项也是如此

self.view

答案 1 :(得分:2)

您似乎正在寻找replace()的行为,而不是strip()

尝试使用replace('"', '')代替strip('"')strip仅从字符串的开头和结尾删除字符,而replace将处理所有事件。

您的示例将更新为如下所示:

example = [('7-30-17','0x34','"Upload Complete"'),('7-31-17','0x35','"RCM","Interlock error"')]

example = [(x,y,(z.replace('"', '')))
    for x,y,z in example]

example最终得到以下值:

[('7-30-17', '0x34', 'Upload Complete'), ('7-31-17', '0x35', 'RCM,Interlock error')]

答案 2 :(得分:1)

问题是因为 Intent mainIntent = new Intent(Intent.ACTION_MAIN, null); mainIntent.addCategory(Intent.CATEGORY_LAUNCHER); List<ResolveInfo> pkgAppsList = this.getPackageManager().queryIntentActivities( mainIntent, 0); Log.d("log","installed apps : "+pkgAppsList.size()); 只会从字符串的末尾删除。

使用strip替换regex

"