小编Fra*_*ger的帖子

在Python中使用HTTP GET的最快方法是什么?

如果我知道内容将是一个字符串,那么在Python中使用HTTP GET的最快方法是什么?我正在搜索文档中的快速单行,如:

contents = url.get("http://example.com/foo/bar")
Run Code Online (Sandbox Code Playgroud)

但是,所有我能找到使用谷歌是httpliburllib-我无法找到这些库中的快捷方式.

标准Python 2.5是否具有上述某种形式的快捷方式,还是应该编写函数url_get

  1. 我宁愿不把shell的输出捕获到wgetcurl.

python networking http

589
推荐指数
10
解决办法
72万
查看次数

在LINQ查询中调用ToList()或ToArray()会更好吗?

我经常遇到我想在我声明它的地方评估查询的情况.这通常是因为我需要多次迭代它并且计算起来很昂贵.例如:

string raw = "...";
var lines = (from l in raw.Split('\n')
             let ll = l.Trim()
             where !string.IsNullOrEmpty(ll)
             select ll).ToList();
Run Code Online (Sandbox Code Playgroud)

这很好用.但是,如果我不打算修改结果,那么我不妨打电话给ToArray()而不是ToList().

我想知道是否ToArray()通过第一次调用实现,ToList()因此内存效率低于仅调用ToList().

我疯了吗?我应该只是打电话ToArray()- 安全且安全地知道内存不会被分配两次吗?

.net linq performance

488
推荐指数
15
解决办法
8万
查看次数

如何从Java中的不同类读取私有字段的值?

我在第三方设计的设计很差JAR,我需要访问其中一个私有字段.例如,为什么我需要选择私人领域是否有必要?

class IWasDesignedPoorly {
    private Hashtable stuffIWant;
}

IWasDesignedPoorly obj = ...;
Run Code Online (Sandbox Code Playgroud)

我如何使用反射来获得价值stuffIWant

java reflection field private class

466
推荐指数
7
解决办法
27万
查看次数

不推荐使用java.net.URLEncoder.encode(String),我应该使用什么呢?

使用时收到以下警告java.net.URLEncoder.encode:

warning: [deprecation] encode(java.lang.String)
         in java.net.URLEncoder has been deprecated

我应该用什么呢?

java url network-programming deprecated

185
推荐指数
3
解决办法
17万
查看次数

如何从字符串中加载XML中的org.w3c.dom.Document?

我在一个字符串中有一个完整的XML文档,并且想要一个Document对象.谷歌出现了各种各样的垃圾.什么是最简单的解决方案?(在Java 1.5中)

解决方案感谢Matt McMinn,我已经确定了这个实现.它具有适当级别的输入灵活性和异常粒度.(很高兴知道错误是来自格式错误的XML SAXException- 或者只是错误的IO - IOException.)

public static org.w3c.dom.Document loadXMLFrom(String xml)
    throws org.xml.sax.SAXException, java.io.IOException {
    return loadXMLFrom(new java.io.ByteArrayInputStream(xml.getBytes()));
}

public static org.w3c.dom.Document loadXMLFrom(java.io.InputStream is) 
    throws org.xml.sax.SAXException, java.io.IOException {
    javax.xml.parsers.DocumentBuilderFactory factory =
        javax.xml.parsers.DocumentBuilderFactory.newInstance();
    factory.setNamespaceAware(true);
    javax.xml.parsers.DocumentBuilder builder = null;
    try {
        builder = factory.newDocumentBuilder();
    }
    catch (javax.xml.parsers.ParserConfigurationException ex) {
    }  
    org.w3c.dom.Document doc = builder.parse(is);
    is.close();
    return doc;
}
Run Code Online (Sandbox Code Playgroud)

java xml w3c document

103
推荐指数
3
解决办法
12万
查看次数

什么是简单的命令行程序或脚本来备份SQL Server数据库?

我在内部服务器上执行数据库备份时过于宽松.

是否有一个简单的命令行程序,我可以用它来备份SQL Server 2005中的某些数据库?或者有一个简单的VBScript?

sql-server backup scripting command-line

90
推荐指数
6
解决办法
22万
查看次数

如何在T-SQL中删除默认值或类似约束?

我知道语法:

ALTER TABLE [TheTable] DROP CONSTRAINT [TheDefaultConstraint]
Run Code Online (Sandbox Code Playgroud)

但是当我不知道它的名字时,如何删除默认约束?(也就是说,它是在CREATE TABLE时间自动生成的.)

sql t-sql default constraints

66
推荐指数
2
解决办法
5万
查看次数

我们该怎么做才能为2038做准备?

我想我今天写的一些软件将在30年内使用.但我也意识到,很多都是基于UNIX传统,即将时间暴露为自1970年以来的秒数.

#include <stdio.h>
#include <time.h>
#include <limits.h>

void print(time_t rt) {
    struct tm * t = gmtime(&rt);
    puts(asctime(t));
}

int main() {
    print(0);
    print(time(0));
    print(LONG_MAX);
    print(LONG_MAX+1);
}
Run Code Online (Sandbox Code Playgroud)

执行结果:

  • 1970年1月1日00:00:00
  • 2008年8月30日星期六18:37:08
  • 星期二1月19日3时14分07秒2038
  • 12月13 星期五20:45:52 1901

函数ctime(),gmtime()和localtime()都将一个时间值作为参数,该时间值表示自Epoch(1970年1月1日00:00:00 UTC;参见时间(3))以来的时间(以秒为单位).

我想知道作为程序员在这个领域是否有任何主动做的事情,或者我们是否相信所有软件系统(又称操作系统)将来会如何神奇地升级?

更新看起来确实64位系统是安全的:

import java.util.*;

class TimeTest {
    public static void main(String[] args) {
        print(0);
        print(System.currentTimeMillis());
        print(Long.MAX_VALUE);
        print(Long.MAX_VALUE + 1);
    }

    static void print(long l) {
        System.out.println(new Date(l));
    }
}
Run Code Online (Sandbox Code Playgroud)
  • 12月31日星期三16:00:00太平洋标准时间1969年
  • 2008年8月30日星期六12:02:40 PDT 2008
  • 8月16日星期六23:12:55太平洋标准时间292278994
  • 太阳12月02日08:47:04太平洋标准时间292269055

但那一年292278994呢?

unix maintainability time year2038

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

如何将密钥重复率提高到操作系统限制以外?

我习惯使用键盘上的光标键来导航源代码.这是我15年来所做的事情,这当然意味着我的导航速度受到键盘速度的限制.在Vista和OS X(我双启动MacBook)上,我的密钥重复率一直在上升.但是在Visual Studio和其他应用程序中,速率仍然比我想要的要慢得多.

如何在Visual Studio和其他文本编辑器中更快地提高键重复率?

windows keyboard macos visual-studio

55
推荐指数
7
解决办法
4万
查看次数

使用PIL使所有白色像素透明?

我正在尝试使用Python Image Library使所有白色像素透明.(我是一个C黑客试图学习python所以要温柔)我已经有转换工作(至少像素值看起来正确)但我无法弄清楚如何将列表转换为缓冲区来重新创建图片.这是代码

img = Image.open('img.png')
imga = img.convert("RGBA")
datas = imga.getdata()

newData = list()
for item in datas:
    if item[0] == 255 and item[1] == 255 and item[2] == 255:
        newData.append([255, 255, 255, 0])
    else:
        newData.append(item)

imgb = Image.frombuffer("RGBA", imga.size, newData, "raw", "RGBA", 0, 1)
imgb.save("img2.png", "PNG")
Run Code Online (Sandbox Code Playgroud)

python image python-imaging-library

54
推荐指数
6
解决办法
7万
查看次数