问题列表 - 第13467页

pythonic方式将变量转换为列表

我有一个函数,其输入参数可以是元素或元素列表.如果这个参数是单个元素,那么我将它放在一个列表中,这样我就可以以一致的方式迭代输入.

目前我有这个:

def my_func(input):
    if not isinstance(input, list): input = [input]
    for e in input:
        ...
Run Code Online (Sandbox Code Playgroud)

我正在使用现有的API,因此无法更改输入参数.使用isinstance()感觉hacky,所以有一个正确的方法来做到这一点?

python arguments list

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

二进制数据的文本表示到底是什么?

有时,当您下载具有错误 mime 类型的编译二进制文件时,或者例如在二进制文件上运行“more”命令时,您会因为缺乏更好的术语而得到一堆“乱码”。

例如,这是我在 OS X 上用 gcc 编译的一个非常简单的 C 程序上从命令行运行“more”时看到的片段。

<94>^^^@^@ESC^@^@^@^^^A^@^@<A8>^^^@^@.^@^@^@^N^D^@^@^P ^@^@@^@^@^@^O^D^@^@^L ^@^@H^@^@^@^O^D^@^@^H ^@^@P^@^@^@^O
^D^@^@^@ ^@^@\^@^@^@^C^@^P^@^@^P^@^@p^@^@^@^O^A^@^@b^_^@^@y^@^@^@^O^D^@^@^D ^@^@<82>^@^@^@^O^A^@^@<B6>^^^@^@<88>
^@^@^@^O^A^@^@T^_^@^@<8D>^@^@^@^O^A^@^@T^^^@^@<93>^@^@^@^A^@^A^B^@^@^@^@<99>^@^@^@^A^@^A^B^@^@^@^@^L^@^@^@^M^@^@
^@ ^@dyld_stub_binding_helper^@__dyld_func_lookup^@dyld__mach_header^@_NXArgc^@_NXArgv^@___progname^@__mh_execute
_header^@_average^@_environ^@_main^@_sum^@start^@_exit^@_printf^@^@^@^@
Run Code Online (Sandbox Code Playgroud)

有人可以简单地解释一下这是为什么吗?当文本编辑器或纯文本 mime 类型尝试解释二进制数据时会发生什么?^@ 在这种情况下有什么意义吗?为什么有一些文字和一些乱码?这种二进制数据在文本中的表示方式是否有任何标准?为什么不是简单的1和0呢?

我可以从概念上将 ascii 或 unicode 理解为数字系统中字符的表示,可以简化为二进制 1 和 0 以及 CPU 可以理解的数字系统。但在更高的层面上,我试图了解二进制数据是什么。我想我想“看到抽象”,如果这有意义的话。

有没有办法在文本编辑器中以任何有意义的方式“查看”二进制数据?

binary text

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

优化问题

我太密集了,无法解决以下优化问题:

例如,有一个2D数组,比如符号与时间

A 1114334221111 
B 9952111111111
C 1113439111131
D 1255432245662
Run Code Online (Sandbox Code Playgroud)

还有一个符号列表,例如:

CABDC
Run Code Online (Sandbox Code Playgroud)

您必须按符号的顺序从数组中选择值,但您可以根据需要重复一次符号.您必须为每个符号选择至少一个值,并且您必须完成整个列表.例如,一种可能性是:

  CCCAAAAAABDDC
  1114334221661 = 35
Run Code Online (Sandbox Code Playgroud)

是否有算法选择总和为最大值的符号列表?在第一次脸红时它看起来像某种回溯算法,但这可能会退化到指数时间.

algorithm

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

在PHP中将时间戳转换为时间,例如1天前,2天前...

我试图转换格式的时间戳,2009-09-12 20:57:19并将其转换为类似于3 minutes agoPHP的东西.

我找到了一个有用的脚本来做到这一点,但我认为它正在寻找一种不同的格式作为时间变量.我想要修改以使用此格式的脚本是:

function _ago($tm,$rcs = 0) {
    $cur_tm = time(); 
    $dif = $cur_tm-$tm;
    $pds = array('second','minute','hour','day','week','month','year','decade');
    $lngh = array(1,60,3600,86400,604800,2630880,31570560,315705600);

    for($v = sizeof($lngh)-1; ($v >= 0)&&(($no = $dif/$lngh[$v])<=1); $v--); if($v < 0) $v = 0; $_tm = $cur_tm-($dif%$lngh[$v]);
        $no = floor($no);
        if($no <> 1)
            $pds[$v] .='s';
        $x = sprintf("%d %s ",$no,$pds[$v]);
        if(($rcs == 1)&&($v >= 1)&&(($cur_tm-$_tm) > 0))
            $x .= time_ago($_tm);
        return $x;
    }
Run Code Online (Sandbox Code Playgroud)

我认为在前几行中脚本试图做一些看起来像这样的事情(不同的日期格式数学):

$dif = 1252809479 - 2009-09-12 20:57:19;
Run Code Online (Sandbox Code Playgroud)

我如何将我的时间戳转换为(unix?)格式?

php timestamp

215
推荐指数
10
解决办法
23万
查看次数

C#扩展方法仅在一个类中可见且可访问("私有")

在C#中,是否可以在类上创建扩展方法但限制类中的可见性/可访问性?(例如,M类的扩展方法A只能在Z类中访问)

例:

class A
{
     String foo = "";
     String bar = foo.MakeMillionaire("arg");
}
Run Code Online (Sandbox Code Playgroud)

在上面的例子中我想要的扩展方法"MakeMillionaire"扩展String类是A类.我可以通过A类中定义的静态类扩展方法做到这一点不知何故内可见和可访问?

编辑:尝试常规嵌套类会产生"错误:必须在顶级静态类中定义扩展方法".

.net c# extension-methods

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

使用PHP获取和存储信用卡信息的最佳实践

我应该在前几个步骤(验证,审核购买)中使用会话,然后在最终提交中将信息输入数据库吗?

饼干会被顶起并变成诉讼吗?风险太大了吗?

如果存储信用卡号码,我是否需要以任何特殊方式保护我的数据库?

欢迎任何和所有推荐和个人经历.

php transactions credit-card

7
推荐指数
1
解决办法
2556
查看次数

升级到Mac应用程序中的管理员权限

我正在创建一个简单的应用程序,让您快速输入要运行的shell命令.它工作得很好,但是存在sudo命令的问题.目前,它检测到一个sudo命令,然后我尝试让它为用户的密码启动一个授权窗口,就像你在安装程序中看到的那样.

这是代码一旦检测到它是一个sudo命令:

SFAuthorization *authorization = [[SFAuthorization alloc] initWithFlags:kAuthorizationFlagPreAuthorize rights:NULL environment:kAuthorizationEmptyEnvironment];
if ([authorization obtainWithRight:"com.mycompany.myapplication" flags:kAuthorizationFlagPreAuthorize error:nil]){
    //authorized, now run the command using NSTask.
}else{
    //fail
}
Run Code Online (Sandbox Code Playgroud)

现在,据我所知,这完全是错误的.这正是我从文档中拼凑而成的内容.有任何想法吗?

macos rights authorization admin objective-c

6
推荐指数
1
解决办法
3215
查看次数

高写入(10000+插入/小时),低读取(10读/秒)的最佳数据库?

我正在开发一个Web应用程序,目前正在使用sql server 2008.但是,我正在考虑转移到另一个数据库(simpledb)以提高性能.

我有一个后台进程,每小时最多10000行插入一个特定的表.该表也被读取以显示Web应用程序中的数据.后台进程运行时,Web应用程序无法使用,因为数据库连接超时.

因此,我正在考虑转向亚马逊的simpledb来提高性能.亚马逊的SimpleDB是否针对此用例进行了优化?如果没有,我可以使用另一种解决方案吗?

sql database sql-server performance amazon-simpledb

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

C真的用于很多科学计算吗?

我现在正在大学里上一门名为"科学计算"的数学课,教授告诉我们C是用于科学计算的最常用的语言,我只是想知道这位教授有多准确?

c scientific-computing

10
推荐指数
4
解决办法
9321
查看次数

静态工厂方法以避免重复对象

我正在阅读Joshua Bloch的" Effective Java Programming Language Guide ".
他解释说静态工厂方法可以用来避免不必要的重复对象.
我对此并不十分了解.
谁能解释一下?

java methods factory

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