我在program.py中有以下代码:
from sys import stdin
for line in stdin:
print line
Run Code Online (Sandbox Code Playgroud)
我跑,输入行,然后按Ctrl+ D,但程序不退出.
这确实有效:
$ printf "echo" | python program.py
Run Code Online (Sandbox Code Playgroud)
当我按Ctrl+ 时,为什么程序不退出d?我正在使用Fedora 18终端.
我从来没有见过这样的东西.我已经花了一个多小时来削减这个到最简单的我能得到它.
import java.io.File;
import java.sql.*;
public class Test {
private static final String DB_PATH = "test.db";
public static void main(String[] args) throws ClassNotFoundException, SQLException {
Class.forName("org.sqlite.JDBC");
new File(DB_PATH).delete();
Connection conn = null;
Statement s = null;
try {
conn = DriverManager.getConnection("jdbc:sqlite:" + DB_PATH);
s = conn.createStatement();
s.execute("CREATE TABLE person (id integer primary key, name text)");
s.execute("CREATE VIEW person_view AS SELECT p.id, p.name FROM person p");
s.execute(""
+ "CREATE TRIGGER person_view_delete INSTEAD OF DELETE ON person_view "
+ "BEGIN delete from …
Run Code Online (Sandbox Code Playgroud) 在 Google将 import/export API 扩展到容器绑定的 Apps Script 项目之前,我已经将我的大部分项目移到了一个可以使用该 API 的库中,然后将 Google Docs 项目变成了一个只调用库的 shell。
我的问题是让库访问与PropertiesService
Google Doc 项目相同的属性 ( )。由于我有我的 Docs Add-on 的现有用户,我需要继续使用这些属性。
在我的 Google Doc 项目中,我尝试过
$.PropertiesService = PropertiesService;
Run Code Online (Sandbox Code Playgroud)
($
我的图书馆在哪里)。
它没有用。该库继续使用自己的属性。
然后我尝试了:
function _mock(obj) {
var ret = {};
for(var key in obj) {
if(typeof obj[key] == 'function') {
ret[key] = obj[key].bind(obj);
} else {
ret[key] = obj[key];
}
}
return ret;
}
$.PropertiesService = _mock(PropertiesService);
Run Code Online (Sandbox Code Playgroud)
还是行不通。再试一次:
function _mock(obj) {
var ret = {}; …
Run Code Online (Sandbox Code Playgroud) 为什么goog.inherits
Google Closure Library看起来像这样:
goog.inherits = function(childCtor, parentCtor) {
function tempCtor() {};
tempCtor.prototype = parentCtor.prototype;
childCtor.superClass_ = parentCtor.prototype;
childCtor.prototype = new tempCtor();
childCtor.prototype.constructor = childCtor;
};
Run Code Online (Sandbox Code Playgroud)
而不是
goog.inherits = function(childCtor, parentCtor) {
childCtor.superClass_ = parentCtor.prototype;
childCtor.prototype = new parentCtor();
childCtor.prototype.constructor = childCtor;
};
Run Code Online (Sandbox Code Playgroud)
有什么好处tempCtor
呢?
在https://github.com/google/guice/issues/846上敲了一个多小时后,我意识到我有两个不同的 jar 提供的 Guice 库:guice-4.0-beta5.jar 和 sisu-guice -3.1.3-no_aop.jar。
嘎啊……
第二个与Guava 18不兼容,如果加载,会在使用Guava时导致访问错误。
我正在创建一个没有依赖项的 SBT 插件,由sbtPlugin := true
.
依赖树(我的插件是com.github.pauldraper.playclosure:sbt-plugin
):
> what-depends-on org.sonatype.sisu sisu-guice 3.1.3
[info] org.sonatype.sisu:sisu-guice:3.1.3
[info] +-org.eclipse.sisu:org.eclipse.sisu.plexus:0.0.0.M5
[info] +-org.apache.maven:maven-core:3.2.2
[info] | +-org.vafer:jdeb:1.3
[info] | +-com.typesafe.sbt:sbt-native-packager:0.7.4
[info] | +-com.typesafe.play:sbt-plugin:2.3.7
[info] | +-com.github.pauldraper.playclosure:sbt-plugin:0.0-SNAPSHOT
[info] | | +-default:project_2.10:0.1-SNAPSHOT [S]
[info] | |
[info] | +-default:project_2.10:0.1-SNAPSHOT [S]
[info] |
[info] +-org.apache.maven:maven-plugin-api:3.2.2
[info] +-org.apache.maven:maven-core:3.2.2
[info] | +-org.vafer:jdeb:1.3
[info] | +-com.typesafe.sbt:sbt-native-packager:0.7.4
[info] | +-com.typesafe.play:sbt-plugin:2.3.7
[info] | +-com.github.pauldraper.playclosure:sbt-plugin:0.0-SNAPSHOT
[info] | | +-default:project_2.10:0.1-SNAPSHOT [S] …
Run Code Online (Sandbox Code Playgroud) 我有一个内容可编辑的div:
<div contenteditable="true"></div>
Run Code Online (Sandbox Code Playgroud)
HTML可以粘贴到该div中.HTML保证不具有脚本标记或事件处理程序属性等吗?
我还没有找到源代码,但我猜所有浏览器都会删除脚本.否则,似乎对网络钓鱼式用户XSS非常开放:"通过将其粘贴到Gmail中,可以看到跳舞的小马......"
编辑:例如,<script>
如果您复制并粘贴以下内容,Chrome会删除该元素:
div {
border: 1px solid black;
}
Run Code Online (Sandbox Code Playgroud)
Copy this:
<div>
<b>Stack</b> <i>Overflow</i>
<br>
<script>
if(document.querySelectorAll('div[contenteditable=true]').length) {
alert('Hacked!');
}
</script>
<img src="http://blog.stackoverflow.com/wp-content/uploads/stackoverflow-logo-300.png">
</div>
<br>
<br>
Into this: (if you see a `Hacked!` alert, the script was not stripped)
<div contenteditable="true"></div>
Run Code Online (Sandbox Code Playgroud)
这是一种保证行为吗?或者我是否必须做一些特殊的事情来阻止XSS?
我试试
trait Foo[A] {
def copy(int: Int): A
}
case class Bar(int: Int) extends Foo[Bar]
Run Code Online (Sandbox Code Playgroud)
但我明白了
错误:类Bar需要是抽象的,因为类型为(int:Int)的trait Foo中的方法复制this.Bar未定义
由于Bar
是一个案例类,它会自动定义一个copy
具有该签名的方法.
为什么Foo
类不满足特征定义的接口Bar
?
我有一个多线程程序,可以在数百个地方打印到控制台.不幸的是,而不是
Line 2
Line 1
Line 3
Run Code Online (Sandbox Code Playgroud)
我明白了
Line2Line1
Line3
Run Code Online (Sandbox Code Playgroud)
我想让puts
线程安全.
在Python中(我认为没有这个问题,但假设它有),我会这样做
old_print = print
print_mutex = threading.Lock()
def print(*args, **kwargs):
print_mutex.acquire()
try:
old_print(*args, **kwargs)
finally:
print_mutex.release()
Run Code Online (Sandbox Code Playgroud)
我在Ruby中尝试这个,
old_puts = puts
puts_mutex = Mutex.new
def puts(*args)
puts_mutex.synchronize {
old_puts(*args)
}
Run Code Online (Sandbox Code Playgroud)
但这不起作用:"未定义的方法old_puts
"
如何使线程安全(即不打印部分线)?
Datadog Tracing API需要序列化为 JSON 数字的 64 位整数。
{
"span_id": 16956440953342013954,
"trace_id": 13756071592735822010
}
Run Code Online (Sandbox Code Playgroud)
如何使用 JavaScript 创建带有 64 位整数的 JSON?
java ×2
javascript ×2
add-on ×1
command-line ×1
dependencies ×1
eof ×1
html ×1
inheritance ×1
integer ×1
jdbc ×1
json ×1
libraries ×1
linux ×1
prototype ×1
python ×1
ruby ×1
sbt ×1
sbt-plugin ×1
scala ×1
security ×1
sqlite ×1
traits ×1