小编Sun*_*y88的帖子

Pythonic方法在列表中找到最大值及其索引?

如果我想要列表中的最大值,我可以写max(List),但如果我还需要最大值的索引怎么办?

我可以这样写:

maximum=0
for i,value in enumerate(List):
    if value>maximum:
        maximum=value
        index=i
Run Code Online (Sandbox Code Playgroud)

但这对我来说看起来很乏味.

如果我写:

List.index(max(List))
Run Code Online (Sandbox Code Playgroud)

然后它将迭代列表两次.

有没有更好的办法?

python

138
推荐指数
6
解决办法
28万
查看次数

检查float是否等于python中的整数值

在Python 3中,我正在检查给定值是否为三角形,也就是说,对于某些正整数n,它可以表示为n(n + 1)/ 2

我可以写一下:

import math
def is_triangular1(x):
    num=(1/2) * (math.sqrt(8*x+1)-1 )
    return int(num)==num
Run Code Online (Sandbox Code Playgroud)

或者我需要这样做吗?:

epsilon = 0.000000000001
def is_triangular2(x):
    num=(1/2) * (math.sqrt(8*x+1)-1 )
    return abs(int(num) - num)<epsilon
Run Code Online (Sandbox Code Playgroud)

我检查了两个函数返回x的相同结果,最多为1,000,000.但我不确定一般来说int(x)== x将始终正确地确定一个数是否是整数,因为例如5的情况表示为4.99999999999997等.

据我所知,第二种方法是正确的,如果我用C语言,但我不确定Python 3.

python floating-point

22
推荐指数
4
解决办法
2万
查看次数

神经网络作为通用逼近器

通用逼近定理的形式陈述表明,具有单个隐藏层的神经网络可以逼近在m维单位超立方体上连续的任何函数.但是,关于它们是否可以总是被神经网络近似的任何已知事物如何?

例如,采用计算数字pi的第n位的函数.如果我在这个数据上训练一些隐藏层神经网络:( n,pi的第n个数字),它最终是否能够为看不见的n返回正确的值?多个隐藏层神经网怎么样?

machine-learning neural-network

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

我有一个C sharp的程序,我可以将它编译为Linux服务器的可执行文件,以便我可以在服务器上运行它而无需安装单声道吗?

可能重复:
如何使用Mono和mkbundle将简单的.Net控制台项目转换为可移植的exe?

我有一个在Windows上编写的C#程序,我需要将它传输到linux服务器.
但是客户端不希望在他的服务器上安装mono,所以我想找到一种让他轻松的方法.
是否有可能将这个程序转换为在Linux上运行而不安装单声道的格式?

.net c# linux mono

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

尝试创建python生成器时出现问题

我正在尝试学习如何使用生成器,所以我写了这个,但它只是一直打印相同的值.为什么?

我希望它生成从999到100的值.

>>> def gen_a():
        a=999
        while a>99:
            yield a
            a-=1


>>> gen_a().next()
999
>>> gen_a().next()
999
>>> gen_a().next()
999
Run Code Online (Sandbox Code Playgroud)

python generator

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

为什么这个HTML表格会得到额外的单元格?

我没有使用html的丰富经验,但是我尝试制作一个简单的表,但在其中得到了额外的单元格,我不知道为什么。这是代码:

<table border="1">
    <tr>
        <td colspan="5"> hi <td>
        <td colspan="3"> hi <td>
    </tr>
    <tr>
        <td colspan="3"> hi <td>
        <td colspan="5"> hi <td>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

我希望这有两行,每行有2个单元格,第一行的第一个单元格较大,第二行的第二个单元格较大。但是由于某种原因,我每行有4个单元格,如下所示:

html html-table

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

从python执行一个程序,使其在单独的cmd.exe窗口中打开

如何从python程序中执行一个程序,以便它在一个单独的cmd.exe窗口中打开,并显示已执行程序的输出?我尝试使用subprocess.popen但它在程序运行时不显示cmd.exe窗口.

python subprocess cmd

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

为什么这个小C程序会崩溃?

该计划是:

#include <stdio.h>
#include <stdlib.h>
int main(void) {
    char *a="abc",*ptr;
    ptr=a;
    ptr++;
    *ptr='k';
    printf("%c",*ptr);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

问题在于

*ptr='k';  
Run Code Online (Sandbox Code Playgroud)

线,当我删除它程序正常工作.但我无法弄清楚原因.

c crash

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

Theano乘以零

任何人都可以向我解释这两行代码背后的含义是什么:https://github.com/Newmu/Theano-Tutorials/blob/master/4_modern_net.py

    acc = theano.shared(p.get_value() * 0.)
    acc_new = rho * acc + (1 - rho) * g ** 2
Run Code Online (Sandbox Code Playgroud)

这是一个错误吗?为什么我们将acc实例化为零,然后在下一行中将它乘以rho?看起来它不会以这种方式实现任何目标并且保持为零.如果我们用"acc"替换"rho*acc"会有什么不同吗?

完整功能如下:

def RMSprop(cost, params, lr=0.001, rho=0.9, epsilon=1e-6):
    grads = T.grad(cost=cost, wrt=params)
    updates = []
    for p, g in zip(params, grads):
        acc = theano.shared(p.get_value() * 0.)
        acc_new = rho * acc + (1 - rho) * g ** 2
        gradient_scaling = T.sqrt(acc_new + epsilon)
        g = g / gradient_scaling
        updates.append((acc, acc_new))
        updates.append((p, p - lr * g))
    return …
Run Code Online (Sandbox Code Playgroud)

theano deep-learning

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