社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

python中的数字反转

Spatial Digger • 3 年前 • 1172 次点击  

我有一个列表数组,我想反转数字,所有负数都应该是正数,反之亦然。

array([[-0.16759927, -0.04342834,  0.9848982 ],
       [-0.45425025,  0.47425876,  0.75414544],
       [ 0.14613204, -0.19651204,  0.96955064],
       [ 0.55392107,  0.80368964,  0.21738078],
       [-0.13777969, -0.14350102,  0.98001235],
       [-0.00225069,  0.00356328,  0.99999112]])

有没有python的方法可以做到这一点?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/129289
 
1172 次点击  
文章 [ 2 ]  |  最新文章 3 年前
catasaurus
Reply   •   1 楼
catasaurus    3 年前

如果一个数字是正的或负的,则反转一个数字不是切换。它把一小部分颠倒过来。每个数都是一对一的数,所以你只需要用一除以每个数。这应该做到:

import numpy as np
array = np.array([[-0.16759927, -0.04342834,  0.9848982 ],
       [-0.45425025,  0.47425876,  0.75414544],
       [ 0.14613204, -0.19651204,  0.96955064],
       [ 0.55392107,  0.80368964,  0.21738078],
       [-0.13777969, -0.14350102,  0.98001235],
       [-0.00225069,  0.00356328,  0.99999112]])
new_array = np.array([1/i for i in array])

价值 new_array :

array([[  -5.9666131 ,  -23.0264385 ,    1.01533336],
       [  -2.20142972,    2.10855357,    1.32600417],
       [   6.84312626,   -5.08874673,    1.03140564],
       [   1.80531136,    1.2442614 ,    4.60022271],
       [  -7.25796378,   -6.96859158,    1.0203953 ],
       [-444.30818993,  280.64030893,    1.00000888]])

但如果你只是想要你所描述的,这应该是可行的:

import numpy as np
array = np.array([[-0.16759927, -0.04342834,  0.9848982 ],
       [-0.45425025,  0.47425876,  0.75414544],
       [ 0.14613204, -0.19651204,  0.96955064],
       [ 0.55392107,  0.80368964,  0.21738078],
       [-0.13777969, -0.14350102,  0.98001235],
       [-0.00225069,  0.00356328,  0.99999112]])
new_array = -array

价值 新_阵列 :

array([[ 0.16759927,  0.04342834, -0.9848982 ],
       [ 0.45425025, -0.47425876, -0.75414544],
       [-0.14613204,  0.19651204, -0.96955064],
       [-0.55392107, -0.80368964, -0.21738078],
       [ 0.13777969,  0.14350102, -0.98001235],
       [ 0.00225069, -0.00356328, -0.99999112]])
Marc de la Barrera i Bardalet
Reply   •   2 楼
Marc de la Barrera i Bardalet    3 年前

你可以这么做 -array 并得到预期的结果。