回答編集履歴
1
別解を追記
    
        answer	
    CHANGED
    
    | 
         @@ -21,4 +21,26 @@ 
     | 
|
| 
       21 
21 
     | 
    
         
             
            f = np.vectorize(toChar)
         
     | 
| 
       22 
22 
     | 
    
         
             
            ret = f(ary).reshape(28,28)
         
     | 
| 
       23 
23 
     | 
    
         
             
            print(ret) # [['@' '  ' '◉' '■' '@' '●' '+' '@' '・' '・' '●' '@' '  ' '■' '  ' '*' '*'...
         
     | 
| 
       24 
     | 
    
         
            -
            ```
         
     | 
| 
      
 24 
     | 
    
         
            +
            ```
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
            以下、ちょっと詰め込みすぎな別解。
         
     | 
| 
      
 28 
     | 
    
         
            +
            見づらいですが`'■▲●@*+・ '[v//32]`で数値→文字に変換しています。
         
     | 
| 
      
 29 
     | 
    
         
            +
            ```Python
         
     | 
| 
      
 30 
     | 
    
         
            +
            import numpy as np
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
            # テストデータ
         
     | 
| 
      
 33 
     | 
    
         
            +
            np.random.seed(seed=110)
         
     | 
| 
      
 34 
     | 
    
         
            +
            ary = np.random.randint(0,256,(28,28))
         
     | 
| 
      
 35 
     | 
    
         
            +
            #print(ary) # #print(ary) # [[128 227  61  15 125  89 175 128 208 208  70  98 251...
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
            sp = ary.shape # (28,28)
         
     | 
| 
      
 38 
     | 
    
         
            +
            ret = np.array(list(map(lambda v:'■▲●@*+・ '[v//32], ary.flatten()))).reshape(sp) # 環境の都合上、◉を▲で表現
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
      
 40 
     | 
    
         
            +
            # tiitoiさんの回答を参考に
         
     | 
| 
      
 41 
     | 
    
         
            +
            for r in range(sp[0]):
         
     | 
| 
      
 42 
     | 
    
         
            +
                for c in range(sp[1]):
         
     | 
| 
      
 43 
     | 
    
         
            +
                    print(ret[r][c], end='')
         
     | 
| 
      
 44 
     | 
    
         
            +
                print()
         
     | 
| 
      
 45 
     | 
    
         
            +
            ```
         
     | 
| 
      
 46 
     | 
    
         
            +
            
         
     |