我一直在使用天气网站打开天气图(https://openweathermap.org/)来获取Python项目的详细信息。
rain = w.get_rain() # Get rain volume {'3h': 0}
wind = w.get_wind() # Get wind degree and speed {'deg': 59, 'speed': 2.660}
humidity = w.get_humidity() # Get humidity percentage 67
然后将变量插入到数据库中,该数据库不喜欢' {' '}'
我已经尝试删除' {' '}'从输出,看看这个网站的回复。条:
rain = rain.strip(['{','}'])
和替换:
rain = rain.replace('{', ' ')
但我得到的只是"属性错误:' dict'对象没有属性"。是否有另一个转义子句我可以用于变量来删除不需要的字符?
答案 0 :(得分:3)
返回python字典,您需要访问键和值,而不是删除{}。以下显示如何访问字典值。
print(rain.keys()) # returns a list of all dictionary keys
>>> ['3h']
print(rain['3h']) # returns the value associated with the '3h' key
>>> 0
答案 1 :(得分:0)
由于您的变量是dict
,因此您需要为其创建合适的字符串表示形式。您可以使用自己的格式连接键和值,如下所示:
# a: 1, b: 2, c: 3
myString = ', '.join('{}: {}'.format(k, v) for k,v in myDict.items())
或修改str
# 'a': '1', 'b': '2', 'c': '3'
myString = re.sub('[{}]', '', str(myDict));
答案 2 :(得分:0)
首先,您需要了解所获得的数据类型:
print (type(obj))
并且这不是字符串,您不能替换任何符号。
再来一个。如果您从网站获取信息就像json-object,那么您不需要替换任何东西,因为您可以使用密钥来解析信息,如果需要,可以写入数据库