Change language

# Python | Matrix of non-standard length

|

Method # 1: Using ` zip () ` + comprehension list
The zip function, combined with list comprehension, can help accomplish this particular task. The zip function can help compress a list of counters with a list of elements, and a list comprehension does the job of building the matrix.

 ` # Python3 demo code ` ` Custom length matrix ` ` # using zip () + list comprehension `   ` # initializing list ` ` test_list ` ` = ` ` [` ` ’a’ ` `, ` ` ’b’ ` `, ` `’ c’ ` `] `   ` # initializing the counter list ` ` counter_list ` ` = ` ` [` ` 1 ` `, ` ` 4 ` `, ` ` 2 ` `] `   ` # print original list ` ` print ` ` (` ` "The original list is:" ` ` + ` ` str ` ` (test_list)) `   ` # print a list of counters ` ` print ` ` (` ` "The counter list is:" ` ` + ` ` str ` ` (counter_list)) `   ` # using zip () + mon Name of the list ` ` Custom length matrix ` ` res ` ` = ` ` [[i] ` ` * ` ` j ` ` for ` ` i, j ` ` in ` ` zip ` ` (test_list, counter_list)] `   ` # print result ` ` print ` ` (` `" The custom length matrix is: "` ` + ` ` str ` ` (res )) `

Output:

` The original list is: [’a’,’ b’, ’c’] The counter list is: [1, 4, 2] The custom length matrix is: [[’ a’], [’b’,’ b’ , ’b’,’ b’], [’c’,’ c’]] `

Method # 2: Using the ` map () + mul operator `
This particular problem can also be solved with the built-in mul operator, which multiplies the index elements you like, and the map function does the job forming a matrix.

 ` # Python3 demo code ` ` Custom length matrix ` ` # using map () + mul operator ` ` from ` ` operator ` ` import ` ` mul `   ` # initializing list ` ` test_list ` ` = ` ` [` ` ’a’ ` `, ` ` ’b’ ` `, ` `’ c’ ` `] `   ` # initializing the list of counters ` ` counter_list ` ` = ` ` [` ` 1 ` `, ` ` 4 ` `, ` ` 2 ` `] `   ` # printing the original list ` ` print ` ` (` ` "The original list is: "` ` + ` ` str ` ` (test_list)) `   ` # print counter list ` ` print ` ( ` "The counter list is:" ` ` + ` ` str ` ` (counter_list)) ` ` `  ` # using map () + mul operator ` ` Custom length matrix ` ` res ` ` = ` ` list ` ` (` ` map ` ` (mul, [[` `’ a’ ` `], [` ` ’b’ ` `], [` `’ c’ ` `]], counter_list)) `   ` # print result ` ` print ` ` (` ` "The custom length matrix is: " + str (res)) `` `

Output:

` The original list is: [’a’,’ b’ , ’c’] The counter list is: [1, 4, 2] The custom length matrix is: [[’ a’], [’b’,’ b’, ’b’,’ b’], [’ c’, ’c’]] `

## Shop

Learn programming in R: courses

\$

Best Python online courses for 2022

\$

Best laptop for Fortnite

\$

Best laptop for Excel

\$

Best laptop for Solidworks

\$

Best laptop for Roblox

\$

Best computer for crypto mining

\$

Best laptop for Sims 4

\$

Latest questions

NUMPYNUMPY

Common xlabel/ylabel for matplotlib subplots

NUMPYNUMPY

How to specify multiple return types using type-hints

NUMPYNUMPY

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

NUMPYNUMPY

Flake8: Ignore specific warning for entire file

NUMPYNUMPY

glob exclude pattern

NUMPYNUMPY

How to avoid HTTP error 429 (Too Many Requests) python

NUMPYNUMPY

Python CSV error: line contains NULL byte

NUMPYNUMPY

csv.Error: iterator should return strings, not bytes

## Wiki

Python | How to copy data from one Excel sheet to another

Common xlabel/ylabel for matplotlib subplots

Check if one list is a subset of another in Python

How to specify multiple return types using type-hints

Printing words vertically in Python

Python Extract words from a given string

Cyclic redundancy check in Python

Finding mean, median, mode in Python without libraries

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

Python - Move item to the end of the list

Python - Print list vertically