问题列表 - 第49062页

如何使用list(或tuple)作为String Formatting值

假设这个变量:

s=['Python', 'rocks']
x = '%s %s' % (s[0], s[1])
Run Code Online (Sandbox Code Playgroud)

现在我想替换更长的列表,并分别添加所有列表值,如s [0],s [1],... s [n],似乎不对

从文档引用:

给定格式%值...如果格式需要单个参数,则值可以是单个非元组对象.[4]否则,值必须是具有格式字符串指定的项目数的元组,或单个映射对象(例如,字典).

我尝试了许多与元组和列表组合作为格式化程序但没有成功的组合,所以我想在这里问一下

我希望它很清楚

[编辑]好吧,也许我不够清楚

我有大文本变量,比如

s = ['a', 'b', ..., 'z']

x = """some text block
          %s
          onother text block
          %s
          ... end so on...
          """ % (s[0], s[1], ... , s[26])
Run Code Online (Sandbox Code Playgroud)

如果% (s[0], s[1], ... , s[26])不手动输入每个值,我想更紧凑地更改

python string

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

在Mathematica中选择/删除矩阵中行/列列表的有效方法

这个问题在某种程度上延续了我在这里提出的问题:在Mathematica中删除矩阵列的简单方法是 @belisarius和@Daniel提供了非常有用的答案.

我通常要做的是从矩阵中提取特定的行和列,或者在删除指定的内容后剩下的内容.所以这可以正式写成,找到TakeOperator和Drop运算符,这样:

TakeOperator [A,{i1,..,ip},{j1,...,jq}] =(A [[ik]] [[jl]])(1 <= k <= p,1 <= 1 <= q)=Table[A[[ik]][[jl]],{k,p},{l,q}]

我们注意到Ic = {i'1,...,i'p'} = Complement[{1,...,Length[A]},{i1,...,ip}]; Jc = {j'1,... ,j'q'} = Complement[{1,...,Length[A]},{j1,...,jq}];

DropOperator [A,{i1,..,ip},{j1,...,jq}] =(A [[ik]] [[jl]])(1 <= k'<= p',1 < = l'<= q')=Table[A[[ik']][[jl']],{k',p'},{l','q}]

虽然Table如上所述,但以这种方式使用Table是非常低效的.

为了给出一个想法,我拿了@ belisarius的例子:

In: First@Timing[a = RandomInteger[1000, {5000, 5000}];]

Out:0.218

In:Clear[b,c]

In:First@Timing[
  b = Table[
    If[i < 100, If[j < 100, a[[i]][[j]], a[[i]][[j + 1]]], 
     If[j < 100, a[[i + …
Run Code Online (Sandbox Code Playgroud)

wolfram-mathematica matrix

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

使用预建的共享库时,android ndk UnsatisfiedLinkError

我正在尝试创建一个链接到另一个共享库的共享库.

这是我的主要模块Android.mk:

TOP_LOCAL_PATH := $(call my-dir)
include $(call all-subdir-makefiles)

LOCAL_PATH := $(TOP_LOCAL_PATH)

include $(CLEAR_VARS)

LOCAL_CPP_EXTENSION := cpp


LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ $(LOCAL_PATH)/lib/include
LOCAL_MODULE    := SightCore-jni
LOCAL_SRC_FILES := SightDemo.cpp SightCore-jni.cpp
LOCAL_SHARED_LIBRARIES := SightAPI
LOCAL_LDLIBS = -llog 

include $(BUILD_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)

我还有./lib目录中的预构建共享库及其自己的Android.mk文件:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE    := SightAPI
LOCAL_SRC_FILES := libSightAPI.so
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include

include $(PREBUILT_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)

SightCore-jni.cpp源文件是共享库的jni接口,使用该命令加载

System.loadLibrary("SightCore-jni");  
Run Code Online (Sandbox Code Playgroud)

在ndk-build过程中,我没有得到编译或链接错误.当我尝试运行应用程序并访问其中一个本机方法时,我得到了UnsatsfiedLinkError.我注意到如果在我的jni代码中禁用对SightAPI的引用并将拼写错误输入LOCAL_STATIC_LIBRARIES:= SightAPI行,则构建成功并且没有UnsatisfiedLinkError.
这意味着我拥有的jni代码很好(我确实它确定没问题......)

所以观察结果如下:
如果我用预构建的共享库编译共享库,我会得到一个损坏的 .so文件.

如果我编译相同的ndk项目而不链接到预构建的共享库,那么从java端加载共享库没有问题.

如果可以,请帮帮我.

提前致谢, …

android shared-libraries android-ndk

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

为什么我没有看到IDisposable实现并发的任何实现?

当我查看示例实现时IDisposable,我还没有发现任何线程安全.为什么IDisposable没有实现线程安全?(相反,调用者有责任确保只调用一个线程Dispose()).

c# idisposable thread-safety

16
推荐指数
3
解决办法
2264
查看次数

快照功能的替代方案,SQL Server Standard

出于测试目的,我想将完整的数据库重置为某个状态(数据和结构).我想自动完成这项工作.在我开始测试之前,最好是命令行指令.

经过一番搜索,我发现SQL Server为此提供了一个很好的解决方案.快照.编写测试查询后,我发现SQL Server的标准版不支持这一点.:-(

鉴于我希望自动化这一事实:我的选择是什么?立即覆盖数据文件对我来说听起来不是一个好选择......

其他一些信息:

  • Windows 7的
  • Microsoft SQL Server标准版(64位),10.50.1600.1
  • 数据库大小是app.1千兆字节
  • 这仅用于测试.因此,当我返回"快照"时,其他用户不会使用该数据库.
  • 有关快照的更多信息:

先感谢您!

database sql-server testing snapshot sql-server-2008-r2

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

Codeigniter-2的最佳PHP邮件库

我使用CI-2默认邮件类发送电子邮件.但它没有正确发送基于HTML的电子邮件.

有人能告诉我为CI2发送好的电子邮件库.

提前致谢

codeigniter

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

mongodb单个数据库复制

我有一个由3台服务器组成的MongoDB"副本集".它存储了两个DB,我想知道是否可以只复制一个DB而不运行多个mongoDB实例(每个DB一个).

这是"问题"的草图

      Server1   Server2   Server3
DB1      X         X         X
DB2      X         X
Run Code Online (Sandbox Code Playgroud)

X代表服务器,其中必须复制数据库.

谢谢

replication mongodb

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

通过自由函数或成员函数扩展的机制

包含标准的大量C++库允许您调整对象以便在库中使用.选择通常在成员函数或同一名称空间中的自由函数之间.

我想知道函数和构造库代码用于调用一个调用这个"扩展"函数之一的调用,我知道这个决定必须在编译期间进行,并涉及模板.以下运行时伪代码不可能/无意义,原因超出了本问题的范围.

if Class A has member function with signature FunctionSignature
    choose &A.functionSignature(...)
else if NamespaceOfClassA has free function freeFunctionSignature
    choose freeFunctionSignature(...)
else
    throw "no valid extension function was provided"
Run Code Online (Sandbox Code Playgroud)

上面的代码看起来像运行时代码:/.那么,库如何找出一个类所在的命名空间,它如何检测这三个条件,还有哪些需要避免的陷阱.

我的问题的动机是让我能够在库中找到调度块,并能够在我自己的代码中使用这些构造.所以,详细的答案将有所帮助.

!!赢得胜利!

好的,根据Steve(和评论)的答案,ADL和SFINAE是在编译时连接调度的关键结构.我的头部是ADL(原始)和SFINAE(再次是粗鲁的).但我不知道他们是如何以我认为应该的方式共同组织的.

我想看一个如何将这两个结构组合在一起的说明性示例,以便库可以在编译时选择是在对象中调用用户提供的成员函数,还是在同一对象的命名空间中提供的用户提供的自由函数.这应该只使用上面的两个构造来完成,没有任何类型的运行时分派.

让我们说有问题的对象被调用NS::Car,并且这个对象需要提供MoveForward(int units)作为c的成员函数的行为.如果要从对象的命名空间中拾取行为,它可能看起来像MoveForward(const Car & car_, int units).让我们定义想要分派的函数mover(NS::direction d, const NS::vehicle & v_),其中direction是一个枚举,而v_是一个基类NS::car.

c++ oop templates library-design compile-time

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

在C#/ WPF中确定控件类型的最有效方法

我有一个函数,它将控件作为参数,并根据控件的类型(例如:TextBox,ComboBox,RadioButton等...),它执行特定于类型的代码:

internal static void DoSomething(Control control)
{
    if (control is Button)
    {
        // code for button
    }

    else if (control is CheckBox)
    {
        // code for CheckBox
    }

    else if (control is TextBox)
    {
        // code for TextBox
    }

    // etc.....
}
Run Code Online (Sandbox Code Playgroud)

我想知道这是否是最好的方法.

我知道其他一些方法可以做同样的事情(例如:使用GetType()此类型的字符串表示来查找控件的类型),Microsoft的代码分析工具告诉我使用'as'代替'is'就像这样(因为它在性能方面更好):

internal static void DoSomething(Control control)
{
    Button button = control as Button
    if (button != null)
    {
        // code for button
    }

    else
    {
        CheckBox checkBox = control as CheckBox;
        if (checkBox != null) …
Run Code Online (Sandbox Code Playgroud)

c# syntax wpf types

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

使用Python 3函数注释的开源项目示例

任何人都可以使用Python 3中引入的函数注释给我一些Python开源项目的例子吗?

我想看看这个功能的一些实际用途,看看我是否可以使用它自己的项目.

python-3.x

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