我需要检查一个二维数组以确保它只包含两个特定字符。
假设我将这个存储在名为(data)的列表中的二维数组中:
**%****%%%***
%***%*%%****%
****%%%$*****
我需要验证数组是否只包含(' *','%') 如果它包含任何其他值,例如(' $'),则需要返回false并向用户打印语句。
我尝试使用forall但无法使用2d数组。
同样在Python 3x中
答案 0 :(得分:1)
data = [ '**%****%%%***', '%***%*%%****%', '****%%%$*****' ]
result = all( (len(x) == x.count('*') + x.count('%')) for x in data)
我在这里将二维数组表示为字符串列表。
如果您将表示更改为列表列表,它仍然有效(因为count
和str
都可以使用list
函数。