我有一个如下所示的列表:
[ 'abc=lalalla', 'appa=kdkdkdkd', 'kkakaka=oeoeoeo']
Run Code Online (Sandbox Code Playgroud)
我想用'='拆分这个列表,这样左边的所有东西都会成为键,而右边的值就是值.
{
'abc':'lalalla',
'appa':'kdkdkdkd',
'kkakaka':'oeoeo'
}
Run Code Online (Sandbox Code Playgroud) 我在HDFS中有数据集,它采用镶木地板格式,并且有snappy作为压缩编解码器.就我的研究而言,目前Redshift只接受带有gzip,lzo压缩编解码器的纯文本,json,avro格式.
或者,我正在将镶木地板格式转换为纯文本,并使用Pig脚本将snappy编解码器更改为gzip.
目前有没有办法直接从镶木地板文件加载数据到Redshift?
这是此问题的扩展:如何在列表中拆分字符串以在Python中创建键值对
与上述问题的区别在于我列表中的项目并非都是键值对; 某些项目需要分配一个值.
我有一个清单:
list = ['abc=ddd', 'ef', 'ghj', 'jkl=yui', 'rty']
Run Code Online (Sandbox Code Playgroud)
我想创建一个字典:
dict = { 'abc':'ddd', 'ef':1, 'ghj':1, 'jkl':'yui', 'rty':1 }
Run Code Online (Sandbox Code Playgroud)
我正在思考以下问题:
a = {}
for item in list:
if '=' in item:
d = item.split('=')
a.append(d) #I don't I can do this.
else:
a[item] = 1 #feel like I'm missing something here.
Run Code Online (Sandbox Code Playgroud)