Python | Creating a 3D List

A 3-D List means that we need to make a list that has three parameters to it, i.e., (a x b x c), just like a 3 D array in other languages. In this program we will try to form a 3-D List with its content as “#”. Lets look at these following examples:

Input : 
3 x 3 x 3
Output :
[[['#', '#', '#'], ['#', '#', '#'], ['#', '#', '#']],
 [['#', '#', '#'], ['#', '#', '#'], ['#', '#', '#']],
 [['#', '#', '#'], ['#', '#', '#'], ['#', '#', '#']]]

Input :
5 x 3 x 2
Output :
[[['#', '#', '#', '#', '#'],
  ['#', '#', '#', '#', '#'],
  ['#', '#', '#', '#', '#']],
 [['#', '#', '#', '#', '#'],
  ['#', '#', '#', '#', '#'],
  ['#', '#', '#', '#', '#']]]
filter_none

edit
close

play_arrow

link
brightness_4
code

# Python program to print 3D list
# importing pretty printed
import pprint
  
def ThreeD(a, b, c):
    lst = [[ ['#' for col in range(a)] for col in range(b)] for row in range(c)]
    return lst
      
# Driver Code
col1 = 5
col2 = 3
row = 2
# used the pretty printed function
pprint.pprint(ThreeD(col1, col2, row))

chevron_right


Output:

[[['#', '#', '#', '#', '#'],
  ['#', '#', '#', '#', '#'],
  ['#', '#', '#', '#', '#']],
 [['#', '#', '#', '#', '#'],
  ['#', '#', '#', '#', '#'],
  ['#', '#', '#', '#', '#']]]

Refer pprint() to get more insight into this topic.



Now let’s suppose we need to merge two 3D lists into one.

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python program to merge two 3D list into one
# importing pretty printed
import pprint
  
def ThreeD(a, b, c):
    lst1 = [[ ['1' for col in range(a)] for col in range(b)] for row in range(c)]
    lst2= [[ ['2' for col in range(a)] for col in range(b)] for row in range(c)]
    # Merging using "+" operator
    lst = lst1+lst2
    return lst
      
# Driver Code
col1 = 3
col2 = 3
row = 3
  
# used the pretty printed function
pprint.pprint(ThreeD(col1, col2, row))

chevron_right


Output:

[[['1', '1', '1'], ['1', '1', '1'], ['1', '1', '1']],
 [['1', '1', '1'], ['1', '1', '1'], ['1', '1', '1']],
 [['1', '1', '1'], ['1', '1', '1'], ['1', '1', '1']],
 [['2', '2', '2'], ['2', '2', '2'], ['2', '2', '2']],
 [['2', '2', '2'], ['2', '2', '2'], ['2', '2', '2']],
 [['2', '2', '2'], ['2', '2', '2'], ['2', '2', '2']]]


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.