我目前制作了一个小程序,它将访问一个网站(API)并阅读访问过的网站。
这是陷入困境的数据:
b'364100,749,23389954\n651718,40,37236\n-1,1,0\n264361,69,706507\n266425,68,622098\n164967,73,1091472\n-1,1,0\n191592,70,770992\n4766,99,14061919\n1901400,1,25\n27878,90,5642168\n1733031,1,20\n35862,61,303870\n348752,40,40202\n327185,40,37294\n373555,40,37437\n1762482,1,0\n265521,40,37650\n697009,1,64\n1804628,1,0\n1735100,1,0\n322506,9,1000\n1739499,1,0\n1716356,1,0\n-1,-1\n-1,-1\n-1,-1\n'
我已经尝试将其列入清单,但这是不可能的。 那么如何删除所有\ n和b'和'最后,我可以把所有这些数字放到一个列表中吗?
答案 0 :(得分:1)
如果我们有
data = b'364100,749,23389954\n651718,40,37236\n-1,1,0\n264361,69,706507\n266425,68,622098\n164967,73,1091472\n-1,1,0\n191592,70,770992\n4766,99,14061919\n1901400,1,25\n27878,90,5642168\n1733031,1,20\n35862,61,303870\n348752,40,40202\n327185,40,37294\n373555,40,37437\n1762482,1,0\n265521,40,37650\n697009,1,64\n1804628,1,0\n1735100,1,0\n322506,9,1000\n1739499,1,0\n1716356,1,0\n-1,-1\n-1,-1\n-1,-1\n'
并且您希望在空白处分割(包括b'\n'
):
data_as_list = data.split()
如果您想以逗号分隔
data_as_list = data.split(b',')
在这两种情况下,结果都是bytes
个对象的列表。如果你想要字符串,请执行类似
data_as_list = data.decode('ascii').split()
或
data_as_list = data.decode('ascii').split(',')
(请注意,分隔符','
现在是一个字符串,而直接在bytes
上工作时,我们使用bytes
分隔符b','
。)
答案 1 :(得分:0)
如果我理解你正在做什么,你可以使用string.split
将字符串分成一个列表。您还可以使用string.strip
删除前导和尾随字符。
例如:
list = string.strip("'b").split("\n")
list
将
['364100,749,23389954', '651718,40,37236', '-1,1,0', '264361,69,706507', '266425,68,622098', '164967,73,1091472', '-1,1,0', '191592,70,770992', '4766,99,14061919', '1901400,1,25', '27878,90,5642168', '1733031,1,20', '35862,61,303870', '348752,40,40202', '327185,40,37294', '373555,40,37437', '1762482,1,0', '265521,40,37650', '697009,1,64', '1804628,1,0', '1735100,1,0', '322506,9,1000', '1739499,1,0', '1716356,1,0', '-1,-1', '-1,-1', '-1,-1', '']
希望这有帮助!