You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python 3获取二维或任意多维数组中的唯一值?

二维/多维数组的唯一值与重复值统计解决方案

你需要统计数组中出现一次的唯一值、出现多次的重复值,并输出重复值的出现次数,以下是基于你现有代码的完整实现:

完整代码(使用Numpy)

import numpy as np

R = int(input("Enter the number of rows: "))
C = int(input("Enter the number of columns: "))
  
matrix = []
print("Enter the numbers:")

for i in range(R):         
    a =[]
    for j in range(C):     
         a.append(int(input()))
    matrix.append(a)

# 将多维数组扁平化
arr = np.array(matrix).flatten()

# 统计每个元素的出现次数
values, counts = np.unique(arr, return_counts=True)

# 筛选出现1次的唯一值和出现多次的重复值
distinct_values = [v for v, c in zip(values, counts) if c == 1]
duplicated_pairs = [(v, c) for v, c in zip(values, counts) if c > 1]

# 按要求格式输出结果
print("\nDistinct values inside array:", ", ".join(map(str, distinct_values)))
print("\nDuplicated values inside array:", ", ".join(map(str, [v for v, _ in duplicated_pairs])))
for val, cnt in duplicated_pairs:
    print(f"{val} appeared {cnt} times")

代码说明

  1. 数组扁平化:用np.array(matrix).flatten()把多维数组转换成一维数组,简化统计逻辑。
  2. 元素计数:np.unique(arr, return_counts=True)返回两个数组——去重后的元素列表,以及每个元素对应的出现次数。
  3. 筛选分类:通过列表推导式分别筛选出出现1次的唯一值,以及出现多次的重复值(保留次数数据)。
  4. 格式输出:按照示例要求拼接字符串,输出分类后的结果和重复值的出现次数。

无Numpy替代方案(使用标准库)

如果不想依赖Numpy,可以用Python标准库的Counter实现:

from collections import Counter

R = int(input("Enter the number of rows: "))
C = int(input("Enter the number of columns: "))
  
matrix = []
print("Enter the numbers:")

for i in range(R):         
    a =[]
    for j in range(C):     
         a.append(int(input()))
    matrix.append(a)

# 手动扁平化多维数组
flat_arr = [num for row in matrix for num in row]
# 统计元素出现次数
counts = Counter(flat_arr)

# 筛选分类
distinct_values = [v for v, c in counts.items() if c == 1]
duplicated_pairs = [(v, c) for v, c in counts.items() if c > 1]

# 输出结果
print("\nDistinct values inside array:", ", ".join(map(str, distinct_values)))
print("\nDuplicated values inside array:", ", ".join(map(str, [v for v, _ in duplicated_pairs])))
for val, cnt in duplicated_pairs:
    print(f"{val} appeared {cnt} times")

内容的提问来源于stack exchange,提问作者bigstep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 04:55:13