小编TeN*_*NoX的帖子

python JSON只获取第一级的密钥

我有一个非常漫长而复杂的json对象,但我只想获得第一级的项目/键!

例:

{
    "1": "a", 
    "3": "b", 
    "8": {
        "12": "c", 
        "25": "d"
    }
}
Run Code Online (Sandbox Code Playgroud)

我希望得到1,3,8!

我找到了这段代码:

for key, value in data.iteritems():
    print key, value
Run Code Online (Sandbox Code Playgroud)

但它打印所有键(也是12和25)

python json iterator key python-2.7

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

2d球没有正确碰撞

我只是想编写一个漂亮的物理游戏.

球碰撞看起来不错,但如果球碰撞得太慢,它们会互相"粘".我不知道他们为什么这么做.

这是我的碰撞功能:

private void checkForCollision(ArrayList<Ball> balls) {
    for (int i = 0; i < balls.size(); i++) {
        Ball ball = balls.get(i);
        if (ball != this && ball.intersects(this)) {
            this.collide(ball, false);
        }
    }
}

public boolean intersects(Ball b) {
    double dx = Math.abs(b.posX - posX);
    double dy = Math.abs(b.posY - posY);
    double d = Math.sqrt(dx * dx + dy * dy);
    return d <= (radius + b.radius);
}

private void collide(Ball ball, boolean b) {
    double m1 = this.radius;
    double …
Run Code Online (Sandbox Code Playgroud)

java 2d collision-detection

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

PHP"意外结束"

我实际上检查了我的代码一百次,但我找不到错误:

我得到的错误:解析错误:语法错误,意外$ end在/home/tennox/public_html/php/kalender.php第46行

我试图做一个计算复活节星期日的函数,在另一个脚本中没有其他所有它只是工作,但在这一个没有.另一种方式围绕同样的事情!

<?php
$year = isset($_POST['year']) ? intval($_POST['year']) : date('Y');
$months = array("", "Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
$days = array('So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa');
$ostern = getOsterSonntag($year);
?>
<form action="kalender.php" method="POST" target="_self">
<input type="text" name="year" value="<?php echo $year; ?>">
</form>
<table border="1" cellspacing="0">
<?php
for($y=0; $y<32; $y++) {
   echo "<tr height=\"20\">";
   for($x=1; $x<=12; $x++) {
      echo "<td width=\"5%\">";
      $date = strtotime("$y.$x.$year");
      $day = date("d", $date);
      $dayname = $days[date("w", …
Run Code Online (Sandbox Code Playgroud)

php syntax

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

依赖/循环泛型循环

问题:

我有两个接口(这里GenCarryGen):

public interface GenCarry<T extends Gen> {
    GenCarry<T> setGen(T gen);
}

public interface Gen<T extends GenCarry> {
    void applyOn(T carry);
}
Run Code Online (Sandbox Code Playgroud)

它在我忽略'rawtypes'警告时起作用,但是试图完成它们我不会太过分:

GenCarry<T extends Gen<GenCarry<T>>>
Gen<C extends GenCarry<Gen<C>>> -> error: not a valid substitute for the bounded parameter.
Run Code Online (Sandbox Code Playgroud)

题:

如果这样的界面看起来如何完整 - 或者甚至是可能的?

是否有更好的方法来"概括"这样的界面?

java generics

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

没有解析的Python JSON密钥

我需要从大约70.000(子)键/对象的JSON格式文本中获取主键(设备)它看起来像这样:

{
   "1":{...........}
   "4":{...........}
   "9":{...........}
}
Run Code Online (Sandbox Code Playgroud)

我需要得到"1","4"和"9".但是我现在的方式是解析文本需要大约2分钟

json = json.loads(response.text) #this takes so long!
devices = json.keys()
Run Code Online (Sandbox Code Playgroud)

因为我在Raspberry Pi上运行它!

有没有更好的办法?

编辑: 我收到服务器上运行的JSON API的数据:

http://.../ZWaveAPI/Run/devices #this is an array
Run Code Online (Sandbox Code Playgroud)

EDIT3:

最终工作代码:(运行2-5秒!:)

import ijson.backends.python as ijson
import urllib

parser = ijson.parse(urllib.urlopen("http://.../ZWaveAPI/Run/devices"))
list = []
for prefix,event,value in parser:
    if event == "map_key" and len(prefix) == 0:
        list.append(value)
return list
Run Code Online (Sandbox Code Playgroud)

python parsing json

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

ssh命令引用有什么区别?

这些命令如何导致不同的输出?

?> ssh host bash -c 'cd /tmp; pwd'
/home/manu
?> ssh host "bash -c 'cd /tmp; pwd'"
/tmp
Run Code Online (Sandbox Code Playgroud)

这里对类似问题的回答指出:

尾随参数组合成一个字符串,该字符串作为参数传递给远程计算机上登录shell的-c选项.

如果*我能理解这一点,但在这个例子中本地评估哪个部分?此外,--在bash命令之前没有帮助.

linux ssh bash quotes quoting

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

标签 统计

java ×2

json ×2

python ×2

2d ×1

bash ×1

collision-detection ×1

generics ×1

iterator ×1

key ×1

linux ×1

parsing ×1

php ×1

python-2.7 ×1

quotes ×1

quoting ×1

ssh ×1

syntax ×1