我正在写一个F#类型,我在初始化时无法弄清楚如何从构造函数引用成员函数.我想我应该使用do绑定,但是do绑定无法理解成员函数.有没有办法解决这个问题?
在R data.table
s中,我可以使用此语法添加新列:
> dt <- data.table(a=c(1,2), b=c(3,4))
> dt[, c := a + b]
> dt
a b c
1: 1 3 4
2: 2 4 6
Run Code Online (Sandbox Code Playgroud)
但是我怎么会把c放在dt的前面呢:
c a b
1: 4 1 3
2: 6 2 4
Run Code Online (Sandbox Code Playgroud)
我看了SO,发现有些人建议使用cbind cbind
,但是我在data.frame
这里使用语法更方便,所以我想知道是否有一个:=
受制裁的方法.我data.table
有大约100列,所以我不想全部列出.
这两种方法有什么区别,每种方法的最佳情况是什么?我知道它们都能够附加一个函数来处理 IObservable 的排放,但我并不真正理解除此之外的差异。
编辑
抱歉,我应该指定的。IObservable.Add 的定义在这里:
https://msdn.microsoft.com/en-us/library/ee370414.aspx
也许这只是 F# 的事情。顺便说一句,我正在使用 F#。不是 C#。
f# subscribe reactive-programming system.reactive observable
在成员定义之前,对象是否可以引用自身?像这样的东西:
type public ClassA () = class
let b = new ClassB(this)
member public x.getClassB() = b
end
Run Code Online (Sandbox Code Playgroud)
其中'this'是对创建ClassB的ClassA实例的引用?
我对 python 很陌生,对这种编码的东西很困惑。到目前为止,我已经阅读了以下类型的“编码”:
import sys
import locale
print (sys.stdout.encoding)
print (locale.getpreferredencoding())
print (sys.getdefaultencoding())
Run Code Online (Sandbox Code Playgroud)
输出:
utf8
cp1252
utf-8
Run Code Online (Sandbox Code Playgroud)
有什么不同?
我发现这个样本面试问题和答案发布在toptal上.但我真的不懂代码.UNION ALL如何变成UNIION(不同)?另外,为什么这段代码更快?
题
使用UNION ALL(非UNION)编写SQL查询,该查询使用WHERE子句来消除重复项.你为什么要这样做?隐藏答案您可以使用UNION ALL避免重复,并且通过运行如下查询仍然比UNION DISTINCT(实际上与UNION相同)运行得快得多:
回答
SELECT * FROM mytable WHERE a=X UNION ALL SELECT * FROM mytable WHERE b=Y AND a!=X
Run Code Online (Sandbox Code Playgroud)
The key is the AND a!=X part. This gives you the benefits of the UNION (a.k.a., UNION DISTINCT) command, while avoiding much of its performance hit.
我在Scala中遇到了一段看起来像这样的代码:
@Singleton
class MyClass {
// ...
}
Run Code Online (Sandbox Code Playgroud)
但我认为对象是单身人士而且课程不是.这基本上等同于此吗?
object MyClass {
// ....
}
Run Code Online (Sandbox Code Playgroud)
编辑:这是我正在看的.
我有一个像这样的字符串:
string s = "<p>Hello world, hello world</p>";
string[] terms = new string[] {"hello", "world"};
Run Code Online (Sandbox Code Playgroud)
我想对此字符串进行替换,以便匹配每个单词(不区分大小写),并替换为带编号的索引span标记,如下所示:
<p>
<span id="m_1">Hello</span>
<span id="m_2">world</span>,
<span id="m_3">hello</span>
<span id="m_4">world</span>!
</p>
Run Code Online (Sandbox Code Playgroud)
我试着这样做.
int match = 1;
Regex.Replace(s,
String.Join("|", String.Join("|", terms.OrderByDescending(s => s.Length)
.Select(Regex.Escape))),
String.Format("<span id=\"m_{0}\">$&</span>", match++),
RegexOptions.IgnoreCase);
Run Code Online (Sandbox Code Playgroud)
输出是这样的:
<p>
<span id="m_1">Hello</span>
<span id="m_1">world</span>,
<span id="m_1">hello</span>
<span id="m_1">world</span>!
</p>
Run Code Online (Sandbox Code Playgroud)
所有id都相同(m_1),因为正则表达式不评估每个匹配的匹配++,而是整个正则表达式的匹配.我该如何解决这个问题?
我有一个doc.MyTable
要重命名为的表格doc._MyTable
。然后,我想doc.MyTable
用旧的相同的主键创建一个新的doc.MyTable
。问题是SQL Server说主键已经存在。因此,这意味着我也需要重命名旧的主键。
我尝试了以下方法:
EXEC SP_RENAME 'doc.MyTable', '_MyTable'
-- Method 1
EXEC SP_RENAME 'PK_MyTable', 'PK__MyTable'
-- Method 2
ALTER TABLE [doc].[_MyTable] DROP CONSTRAINT [PK_MyTable]
ALTER TABLE [doc].[_MyTable] ADD CONSTRAINT [PK__MyTable]
PRIMARY KEY CLUSTERED
(
[document_id] ASC,
[line_id] ASC,
[sub_line_id] ASC
)
-- Create new table
CREATE TABLE [doc].[MyTable] (
... columns
CONSTRAINT [PK_MyTable] PRIMARY KEY CLUSTERED (
... key columns
)
... extra conditions
Run Code Online (Sandbox Code Playgroud)
方法1引发此错误:
假设@itemtype输入为'(null)',在当前数据库'db_dev'中找不到名为'PK_MyTable'的项目。
尽管方法2抛出此错误:
违反PRIMARY KEY约束“ PK_MyTable”。无法在对象“ PK.MyTable”中插入重复键。
重复的键值为(10358930,336000,0)。
当我尝试为新表创建新的主键时。 …
在matlab中,你可以做类似的事情
my_matrix[20:end]
Run Code Online (Sandbox Code Playgroud)
这将获取 中的第 20 行到最后一行my_matrix
。中是否有类似的快捷方式R data.table
?就像是:
my_matrix[20:end, ]
Run Code Online (Sandbox Code Playgroud) f# ×3
data.table ×2
r ×2
sql-server ×2
c# ×1
class ×1
codepages ×1
constructor ×1
ddl ×1
encoding ×1
locale ×1
mysql ×1
observable ×1
primary-key ×1
python ×1
regex ×1
rename ×1
scala ×1
singleton ×1
sql ×1
subscribe ×1
sys ×1
t-sql ×1
union ×1
union-all ×1