Python Please **Bold is code** Recap of two-dimensional arrays and their numpy implementation  import numpy as np my_2d_array = np.array([[1,2],[3,4],[5,6]]) print("This is my_2d_array:") print(my_2d_array) print("This array has shape " + str(my_2d_array.shape) + " as there are " + str(my_2d_array.shape[0]) +  " rows and " + str(my_2d_array.shape[1]) + " columns.") print("The entry of the array with row index " + str(1) + " and column index " + str(1) + " has value " + str(my_2d_array[1,1])) 1) In this problem, implement a TwoDArray class that is meant to mimic (some of) the functionality of a two-dimensional numpy array. DO NOT use numpy at any point.  1A) Give the class an __init__ method Make sure that the variable array is a valid input. This means you should a) Make sure that array is a list of lists. and b) Make sure that each of the inner lists has the same length. You do not need to check for anything else. Rise the appropriate error(s) if these conditions are not met. It is up for you to decide if you should raise a TypeError, KeyError, IndexError, ValueError, ZeroDivisionError, etc. When raising the error, you should also give an informative error message.Assume that all numbers are ints or float,s to only worry about checking that the variable array is a list of lists. 1A) def __init__(self, array):        self.array = array  *** What would be the rest of the code

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

Python Please

**Bold is code**

Recap of two-dimensional arrays and their numpy implementation 

import numpy as np

my_2d_array = np.array([[1,2],[3,4],[5,6]])

print("This is my_2d_array:")

print(my_2d_array)

print("This array has shape " + str(my_2d_array.shape) + " as there are " + str(my_2d_array.shape[0]) +  " rows and " + str(my_2d_array.shape[1]) + " columns.")

print("The entry of the array with row index " + str(1) + " and column index " + str(1) + " has value " + str(my_2d_array[1,1]))

1) In this problem, implement a TwoDArray class that is meant to mimic (some of) the functionality of a two-dimensional numpy array. DO NOT use numpy at any point. 

1A) Give the class an __init__ method

Make sure that the variable array is a valid input. This means you should

a) Make sure that array is a list of lists. and

b) Make sure that each of the inner lists has the same length. You do not need to check for anything else.

Rise the appropriate error(s) if these conditions are not met. It is up for you to decide if you should raise a TypeError, KeyError, IndexError, ValueError, ZeroDivisionError, etc. When raising the error, you should also give an informative error message.Assume that all numbers are ints or float,s to only worry about checking that the variable array is a list of lists.

1A)

def __init__(self, array):

       self.array = array 

*** What would be the rest of the code?

Expert Solution
Step 1

Algorithm:

  1. Start
  2. Create a class called TwoDArray with array as its attribute
  3. Implement constructor to initialize the data
  4. Implement checkType() method which checks whether the array is list of lists of not. if not, then raise an error with specific message else return true
  5. Implement checkLength() method which checks whether all the lists inside the list have same length or not. if not, raise an error with appropriate error message else return true
  6. Implement __repr__() method, that checks the validity of data by calling checkType() and checkLength() methods. If the array is valid, it returns the array else returns "Invalid Input"
  7. Inside the main method, create an object of TwoDArray and print the obejct
  8. Stop
steps

Step by step

Solved in 4 steps with 2 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY