我有一个使用json.loads从网页生成的列表。我用以下代码显示它:
myvar = json.loads(response.text)
print myvar[0],',',myvar[1],',',myvar[2]
打印为:
0 , 1 , 2
我想要打印的内容如下:
0,1,2
我知道如果我先将列表的每个元素转换为字符串,我可以使用.strip()
来实现这一点,但这不是字典的有效方法。有没有办法剥离列表的元素而不先转换为字符串?
由于
修改
根据响应者的要求,以下是使用的完整代码:
import requests
url = 'http://www.whoscored.com/stagestatfeed'
params = {
'against': '1',
'field': '1',
'stageId': '9155',
'teamId': '32',
'type': '7'
}
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36',
'X-Requested-With': 'XMLHttpRequest',
'Host': 'www.whoscored.com',
'Referer': 'http://www.whoscored.com/Teams/32/Statistics/England-Manchester-United'}
responser = requests.get(url, params=params, headers=headers)
print '**********Shots Against (Action Zone) - Away:**********'
print '-' * 170
fixtures = json.loads(responser.text)
print("%s,%s,%s" % (fixtures[0].strip(), fixtures[1].strip(), fixtures[2].strip()))
print responser.text
print '-' * 170
答案 0 :(得分:1)
看起来你只需要这个:
>>> myvar = [1, 2, '3']
>>> ",".join(map(str, myvar))
'1,2,3'
但是,如果你想更健壮,那么将strip
函数应用于每个元素:
>>> myvar = [1, 2, '3']
>>> ",".join(map(lambda x: str(x).strip(), myvar))
'1,2,3'
>>> myvar = [1, 2, 3, ' 4 ']
>>> ",".join(map(lambda x: str(x).strip(), myvar))
'1,2,3,4'