我想知道是否有一个内置于Python中的函数可以确定两个有理数之间的距离,但我没有告诉它哪个数字更大.例如
>>>distance(6,3)
3
>>>distance(3,6)
3
Run Code Online (Sandbox Code Playgroud)
显然我可以写一个简单的定义来计算哪个更大然后只做一个简单的减法:
def distance(x, y):
if x >= y:
result = x - y
else:
result = y - x
return result
Run Code Online (Sandbox Code Playgroud)
但我宁愿不必调用这样的自定义函数.根据我有限的经验,我经常发现Python有一个内置函数或一个模块,它可以完全按照您的需要执行,并且比代码更快.希望有人能告诉我有一个内置功能可以做到这一点.
我有一个定义
def myfunc(a, b):
if a < (b*10):
result = a*2
else:
result = a*(-1)
return result
Run Code Online (Sandbox Code Playgroud)
现在,当我使用for循环逐个输入my a和b值时,这显然是完美的,但它需要永远(我已经简化了定义)我从经验中知道将值作为数组传递将加速它起来.
那么如何修改此代码以接受数组.我已经使用了any()和all()命令,但我必须使用它们错误,因为我的函数只吐出一个值而不是一个值数组.
我想要的输出的一个例子是:
>>>a = np.array([1,5,50,500])
>>>b = 1
>>>print myfunc(a, b)
array([-1, -5, 100, 1000])
Run Code Online (Sandbox Code Playgroud) 我有:
import numpy as np
from mpmath import *
mpf(np.array(range(0,600)))
Run Code Online (Sandbox Code Playgroud)
但它不会让我这样做:
TypeError: cannot create mpf from array
Run Code Online (Sandbox Code Playgroud)
那我该怎么办?
基本上我将使用这个数组,并根据环境(例如1.35626567e1084或6.2345252e-2732)因此需要mpf ,以元素方式乘以非常大或令人难以置信的小数.
更具体地说,我将使用besseli和besselk函数创建令人难以置信的大而令人难以置信的小值.
如何获得一个mpf数组来保存这些数字?
我正试图在我可以随时随地访问的网站上显示我的PI温度.
到目前为止,我已经能够使CPU和GPU临时工作.但是我的硬盘温度不会显示在浏览器中.它在终端工作正常.
这是一张照片:
正如您将注意到我没有显示GPU临时值,但是使用以下命令修复了这个问题:
sudo usermod -G video www-data
Run Code Online (Sandbox Code Playgroud)
不过,我还没有成功地将它用于smartmoxntools.
有谁知道如何使它工作?
此外,在外部网站上安装这些是否安全?黑客可以使用它注入php代码来运行shell命令吗?
我有一些代码使用了修改后的第一和第二阶贝塞尔函数(iv和kv).令人讨厌的是,他们似乎有限制,那些是iv(0,713)和kv(0,697),每个加一个,你得到无穷大和0.这对我来说是个问题,因为我需要使用高于此值的值,通常高达2000或更高.当我试图除以这些时,我最终潜水0或无穷大,这意味着我要么得到错误或零,这两者都不是我想要的.
我正在使用scipy bessel函数,是否有更好的函数可以处理更小和更大的数字,或者修改Python以使用这些大数字的方法.我不确定这里真正的问题是为什么Python不能超过700这些工作,是函数还是Python?
我不知道Python是否已经在做,但我只需要前5-10位*10 ^ x,例如; 也就是说我不需要全部1000位数,也许这就是与Wolfram Alpha如何解决这个问题相比,Python的工作原理是什么?