不滚动边缘的np.roll
创始人
2024-12-24 18:01:20
0

要实现一个不滚动边缘的np.roll函数,可以使用np.pad函数来对数组进行填充,然后再进行滚动操作。下面是一个示例代码:

import numpy as np

def roll_without_edge(arr, shift):
    # 计算填充的数量
    pad_width = abs(shift)
    
    # 根据滚动方向选择填充位置
    if shift > 0:
        padded_arr = np.pad(arr, pad_width, mode='constant', constant_values=0)
        rolled_arr = np.roll(padded_arr, shift)
        result = rolled_arr[pad_width:len(arr)+pad_width]
    else:
        padded_arr = np.pad(arr, pad_width, mode='constant', constant_values=0)
        rolled_arr = np.roll(padded_arr, shift)
        result = rolled_arr[pad_width:len(arr)+pad_width]

    return result

# 示例用法
arr = np.array([1, 2, 3, 4, 5])
shift = 2
result = roll_without_edge(arr, shift)
print(result)

在上面的代码中,roll_without_edge函数接受一个数组和滚动的位移作为输入,并返回滚动后的结果。首先,我们计算填充的数量(即位移的绝对值),然后根据滚动的方向选择填充位置。我们使用np.pad函数对数组进行填充,然后使用np.roll函数进行滚动操作。最后,根据填充的数量截取出滚动后的结果,并返回。

在示例用法中,我们定义了一个数组arr和一个位移shift,然后调用roll_without_edge函数进行滚动操作,并打印出结果。输出结果为[4, 5, 1, 2, 3],表示数组滚动两个位置后的结果。

相关内容

热门资讯

黑科技科技(wepoke智能a... 黑科技科技(wepoke智能ai)wepower使用说明书(wepOkE)素来是真的有挂(确实有挂)...
黑科技模拟器(wepoke智能... WePoker透视辅助工具核心要点解析‌,黑科技模拟器(wepoke智能ai)wepoke是机器发牌...
黑科技脚本(wepokeai代... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款游戏中打牌都...
黑科技辅助挂(wepoke真的... 黑科技辅助挂(wepoke真的有挂)wepoke 软件(wEPOKE)固有真的有挂(有挂猫腻)-哔哩...
黑科技辅助挂(wepoke黑科... 黑科技辅助挂(wepoke黑科技)wepoke软件透明挂演示(wEpOke)一直真的有挂(真的有挂)...
黑科技app(wepoke真的... 此外,数据分析德州()辅助神器app还具备辅助透视行为开挂功能,通过对客户透明挂的深入研究,你可以了...
黑科技智能ai(wepoke辅... 黑科技智能ai(wepoke辅助插件)wepoke软件透明(WEPOke)先前是有挂(果真有挂)-哔...
黑科技模拟器(wepoke透明... 黑科技模拟器(wepoke透明黑科技)wepoke德州扑克用ai代打(WEPOKE)最初存在有挂(有...
黑科技插件(wepoke辅助插... 黑科技插件(wepoke辅助插件)wepoke软件透明(WEPOke)从来是真的有挂(有挂解惑)-哔...
黑科技美元局(wepoke智能... 黑科技美元局(wepoke智能ai)wepoke辅助真的假的(wepoKE)原先真的有挂(竟然有挂)...