小编joh*_*ose的帖子

如何找到两个字符串中都没有出现的字母?

我需要编写代码来打印出两个字符串中没有出现的所有字母.所以基本上我所做的恰恰相反.打印出两个字符串中出现的所有字母.这是代码.我不知道如何改变它.

s1 = input('Enter a string:\n')
s2 = input('Enter second string:\n')
s1 = set(s1)
s2 = set(s2)

def notInother(s1, s2):
    chars = []
    for char in (s1,s2):
        if char not in s2:
            if char not in s1:
                chars.append(char)
    print(chars)
Run Code Online (Sandbox Code Playgroud)

python

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

LINQ - 查询以组合3个数据集 - 改进

下面的代码将根据重要性顺序将3个单独的表组合成一个表.我希望改进这一点 - 也许通过使用查询语法来避免中间阶段.是否有不同的(更好的?)方法来实现相同的结果?

var upsert = new List<KeyValuePair<string, string>>() {
    new KeyValuePair<string, string>("f1","f1-upsert"),
    new KeyValuePair<string, string>("f6","f6-upsert")
};
var fields = new List<KeyValuePair<string, string>>() {
    new KeyValuePair<string, string>("f3","f3-fields"),
    new KeyValuePair<string, string>("f4","f4-fields"),
    new KeyValuePair<string, string>("f6","f6-fields")
};
var server = new List<KeyValuePair<string, string>>() {
    new KeyValuePair<string, string>("f1","f1-server"),
    new KeyValuePair<string, string>("f2","f2-server"),
    new KeyValuePair<string, string>("f5","f5-server")
};

// Order of importance: Upsert > Fields > Server !

var stage = upsert.Concat(fields.Where(f=> !upsert.Any(u=>u.Key==f.Key)));
var final = stage.Concat(server.Where(s=> !stage.Any(j=>j.Key==s.Key))).OrderBy(o=>o.Key);

final.Dump();
Run Code Online (Sandbox Code Playgroud)

LINQPad输出:

Key | Value
------------
f1  | f1-upsert …
Run Code Online (Sandbox Code Playgroud)

.net c# linq

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

Portable.BouncyCastle 是跨平台的吗?

如果我从 ASP.NET Core 2 Web 应用程序引用 Portable.BouncyCastle 是否可以在 Linux 和 MacOS 上运行?我的 ASP.NET Core 2 应用程序仍然跨平台兼容吗?

bouncycastle .net-core asp.net-core asp.net-core-2.0

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

如何强制MS SQL Server执行索引连接?

我正在进行一项任务,我应该在SQL Server中比较不同的连接方法,即散列连接,合并连接和索引连接.

我在让SQL Server执行索引连接时遇到困难.任何人都可以告诉我如何强制它使用索引连接(使用连接提示或类似),或者只是简单地提供一个简单的查询与SQL服务器使用索引连接方法的连接?

sql sql-server indexing join join-hints

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

使用C#的GnuPG包装器

我使用GnuPG和C#来加密带有导入公钥的文件.但是当我尝试加密时,GnuPG用主用户的公钥加密文件.我确信我通过了正确的收件人.

c# security gnupg

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

SQL SERVER 2008 JOIN提示

最近,我试图优化此查询

UPDATE Analytics
SET UserID = x.UserID
FROM Analytics z 
INNER JOIN UserDetail x ON x.UserGUID = z.UserGUID
Run Code Online (Sandbox Code Playgroud)

估计执行计划在表更新中显示57%,在哈希匹配(聚合)上显示40%.我做了一些窥探,并遇到了JOIN提示的主题.所以我在内部连接和WA-ZHAM中添加了一个LOOP提示!新的执行计划在表更新中显示38%,在索引搜索中显示58%.

所以我即将开始对我的所有问题应用LOOP提示,直到谨慎使我变得更好.经过一些谷歌搜索,我意识到JOIN提示在BOL中没有很好地涵盖.因此...

  1. 有人可以告诉我为什么在我的所有查询中应用LOOP提示是个坏主意.我在某处读到LOOP JOIN是查询优化器的默认JOIN方法,但无法验证语句的有效性?
  2. 何时使用JOIN提示?当sh*t击中风扇并且幽灵破坏者不在城里?
  3. LOOP,HASH和MERGE提示之间有什么区别?BOL声称MERGE似乎是最慢的,但每个提示的应用是什么?

感谢您的时间和帮助人们!

我正在运行SQL Server 2008 BTW.上面提到的统计数据是ESTIMATED执行计划.

t-sql join sql-server-2008 join-hints

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

C# 列表和内存

我是 C# 新手,想知道在 list1 = null; 之后 list1 是否真的从内存中删除。

List<string> list1 = new List<string>()
{
    "carrot",
    "fox",
    "explorer"
};
List<string> list2 = new List<string>();
list2.Add(list1[0]);
list2.Add(list1[1]);
list2.Add(list1[2]);

list1 = null;
Run Code Online (Sandbox Code Playgroud)

此代码仅用于文档,在我的实际情况中,list1 对象非常大,我需要将其从内存中删除,并仅继续使用 list2,它是原始 list1 的一小部分。

我假设 list1[0] 和 list2[0] 引用内存中的同一对象,直到我用新值更新 list2[0] ...这是正确的吗?

c# memory

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

关闭 Android 设备电源需要密码

我想看看是否有可能有一个应用程序可以监控关机意图并需要密码/pin 才能继续关闭电源。理想情况下,我希望在按住电源按钮后关闭电源菜单出现之前使用它,因此在显示带有“关闭电源”和“飞行模式”等选项的菜单之前,用户需要输入密码/PIN。我知道如果不植根设备,这可能是不可能的。只是想看看在没有 root 访问权限的情况下是否可以进行这样的操作。

android

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

类中的属性/方法是否占用内存空间?

如果我们有这样的代码:

public class Enemy
{
   public int hp;
}
Run Code Online (Sandbox Code Playgroud)

那么一个Enemy对象在 32 位机器中将占用 4 个字节,在 64 位机器中占用 8 个字节(如果我错了,请纠正我)。

如果我们把它改成这样:

public class Enemy
{
   public int hp;
   public void Attack() {}
}
Run Code Online (Sandbox Code Playgroud)

一个Enemy对象仍然会像以前一样占用相同数量的内存,对吗?

同样的:

public class Enemy
{
   private int hp;
   public int Hp { get { return hp; } set { hp = value; } }
}
Run Code Online (Sandbox Code Playgroud)

据我所知,属性是函数,但被视为变量,对吗?

所以如果我们这样做:

public class Enemy
{
   public int Hp { set; get; }
}
Run Code Online (Sandbox Code Playgroud)

这是否意味着,一个Enemy对象现在根本不占用内存空间?那没有任何意义。

甚至这个,就此而言:

public …
Run Code Online (Sandbox Code Playgroud)

c# memory properties function object

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

努力理解Swift 3的失败初始化与非失败初始化的覆盖

我正在尝试快速了解覆盖失败的初始化程序的概念,并且遇到了以下语句:

委派给超类初始值设定项的唯一方法是强制展开可失败的超类初始值设定项的结果。

教科书没有提供任何代码来真正解释其真正含义?有人可以向我解释一下吗?如果附带代码示例,那就更好了!

overriding initialization subclass superclass swift

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