小编Nic*_*ick的帖子

在 Hive 和 Presto 中按 group by 聚合字符串并按顺序排序

我有一个以下格式的表:

IDX IDY Time Text
idx1 idy1 t1 text1
idx1 idy2 t2 text2
idx1 idy2 t3 text3
idx1 idy1 t4 text4
idx2 idy3 t5 text5
idx2 idy3 t6 text6
idx2 idy1 t7 text7
idx2 idy3 t8 text8
Run Code Online (Sandbox Code Playgroud)

我想看到的是这样的:

idx1 text1
idx1 text2, text3
idx1 text4
idx2 text5, text6
idx2 text7
idx2 text8
Run Code Online (Sandbox Code Playgroud)

所以在最后阶段,我可以:

text1
text2, text3
text4
==SEPERATOR==
text5, text6
text7
text8
Run Code Online (Sandbox Code Playgroud)

如何在 Hive 或 Presto 中执行此操作?谢谢。

hive presto hiveql

4
推荐指数
1
解决办法
9988
查看次数

如果字符不属于Python中的一组匹配模式,则删除字符串中的字符

如果我有一个字符串,它包含很多单词.如果字符串中的单词不是以字母开头的话,我想删除右括号_.

示例输入:

this is an example to _remove) brackets under certain) conditions.
Run Code Online (Sandbox Code Playgroud)

输出:

this is an example to _remove) brackets under certain conditions.
Run Code Online (Sandbox Code Playgroud)

如果不拆分使用单词,我怎么能这样做re.sub呢?

python regex

3
推荐指数
1
解决办法
77
查看次数

将大文本传递到bash curl URL

我正在从将文本作为输入的Web API检索json结果。例:

curl http://www.example.com/annotate?text=${long_text}&input_format=html&output=json
Run Code Online (Sandbox Code Playgroud)

我收到参数列表的错误太长。然后我改为:

curl -d "text=${long_text}&input_format=html&output=json" http://www.example.com/annotate?
Run Code Online (Sandbox Code Playgroud)

我仍然遇到相同的错误。我从html文件中读取了$ {long_text},因为api不接受文件作为参数。有什么建议可以克服这个错误?

bash curl

3
推荐指数
1
解决办法
3237
查看次数

从Python文件中阅读字典的书面清单

我有一个文件,它是这种方式的字典列表:

[{'text': 'this is the text', 'filed1': 'something1', 'filed2': 'something2', 'subtexts': [{'body': 'body of subtext1', 'date': 'xx'}, {'body': 'body of subtext2', 'date': 'yy'}}]

嵌套字典和列表的列表内部可以有多个字典和列表。我想读取在python中完全像这样编写的文件,并创建一个数据结构(字典列表)。如何知道它不是json但已通过file.write(str(list))我们想从文件中读取列表的位置将其写入文件的方式来完成?

python dictionary list

3
推荐指数
1
解决办法
2469
查看次数

写多个尝试,除了在python中

我想知道在python 中编写try.. except语句最优雅的方式是什么.假设我有这个代码:

with open(sys.argv[1]) as f:
    for line in f:
        try:
            do_1(line)
        except:
            pass
        try:
            do_2(line)
        except:
            pass
        try:
            do_3(line)
        except:
            pass
        ...
        ...
Run Code Online (Sandbox Code Playgroud)

写这个的最好方法是什么?我的行为是顺序的.但是,如果do_1失败,我仍然想要表演do_2.如果所有这些都在一个try.. except块中,那么如果do_1失败,我永远不会到达do_2.这是正确的方式,还是我可以except为所有d0_i行动都有一个?

python try-catch

2
推荐指数
2
解决办法
4485
查看次数

标签 统计

python ×3

bash ×1

curl ×1

dictionary ×1

hive ×1

hiveql ×1

list ×1

presto ×1

regex ×1

try-catch ×1