小编dwu*_*urf的帖子

使用python从命令行下载文件

我正在寻找一种通过HTTP下载文件的快速方法,使用命令行中的python one-liner(类似于wget或的功能curl).我们的想法是distutils在Windows上启用快速复制/粘贴下载.

我知道一个解决方案(请参阅下面的答案).我对其他考虑以下因素的解决方案感兴趣:

  • 简洁
  • 大多数"pythonic"解决方案
  • 兼容python2和python3
  • 跨平台
  • 可以有效地处理大文件
  • 没有依赖关系(我们在distutils这里提取,我们不太可能requests在此阶段访问)
  • 正确处理各种HTTP标头,如 Content-Disposition

python http download command-line-interface

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

将xml"rows"加载到R数据表中

我有一些形状像这样的数据:

<people>
  <person first="Mary" last="Jane" sex="F" />
  <person first="Susan" last="Smith" sex="F" height="168" />
  <person last="Black" first="Joseph" sex="M" />
  <person first="Jessica" last="Jones" sex="F" />
</people>
Run Code Online (Sandbox Code Playgroud)

我想要一个如下所示的数据框:

    first  last sex height
1    Mary  Jane   F     NA
2   Susan Smith   F    168
3  Joseph Black   M     NA
4 Jessica Jones   F     NA
Run Code Online (Sandbox Code Playgroud)

我到目前为止:

library(XML)
xpeople <- xmlRoot(xmlParse(xml))
lst <- xmlApply(xpeople, xmlAttrs)
names(lst) <- 1:length(lst)
Run Code Online (Sandbox Code Playgroud)

但我不能为我的生活弄清楚如何将列表放入数据框.我可以将列表设置为"正方形"(即填补空白),然后将其放入数据框中:

lst <- xmlApply(xpeople, function(node) {
  attrs = xmlAttrs(node)
  if (!("height" %in% names(attrs))) {
    attrs[["height"]] <- NA
  }
  attrs …
Run Code Online (Sandbox Code Playgroud)

xml r dataframe

5
推荐指数
1
解决办法
288
查看次数

将字符字段中的多个值提取到新数据表中

我的数据如下所示:

ids <- c(1,2,3)
titles <- c("Entry1", "Entry2", "Entry3")
tags <- c("<self-help><motivation>", "<programming><r><data.frame>", "<photography>")
df <- data.frame(id = ids, title = titles, tags = tags)
df
Run Code Online (Sandbox Code Playgroud)

输出:

   id  title                         tags
1   1 Entry1      <self-help><motivation>
2   2 Entry2 <programming><r><data.frame>
3   3 Entry3                <photography>
Run Code Online (Sandbox Code Playgroud)

我正在努力将标签提取到新的数据框中.我想要的是第二个数据框,如下所示:

  id         tag
1  1   self-help
2  1  motivation
3  2 programming
4  2           r
5  2  data.frame
6  3 photography
Run Code Online (Sandbox Code Playgroud)

我已经设法使用以下内容对列表执行某些操作,但结果列似乎以某种方式嵌套.我试图unlist()在结果向量中没有效果或产生太多条目.

df$tags_list <- lapply(df$tags, function(x)strsplit(gsub("^.|.$", "", x), "><")[[1]])
Run Code Online (Sandbox Code Playgroud)

我的问题是:有人可以帮我生成这个新的data.frame(或data.table)给出的 …

r dataframe

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

试图printf大char []时的Segfault

以下代码是我的分歧.

#include <stdio.h>

int main(int argc, char **argv)
{
    const int MEMSIZE = 1024*1024*10;
    char memblock[MEMSIZE];
    memblock[10] = '\0';

    printf("%s", memblock);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

字符数组是否有一些大小限制?我已经忘记了所有的C,我在这里做了些蠢事吗?

c printf segmentation-fault

0
推荐指数
1
解决办法
261
查看次数