Programming Assignment: Import and Scope Solution
In this article i am gone to share Coursera Course: Programming in Python by Meta Week 4 | Programming Assignment: Import and Scope Solution with you..
Programming Assignment: Import and Scope
Introduction
So far, you’ve learned the different ways in which you can use import statements to import other Python files, modules and packages. You have also seen the different ways in which you can import specific functions using different formats of import.
Goal
- Use the import statement to import a built-in package in Python.
- Use the import statement to call a function present in another Python file.
Objectives
Learn how to use import to bring external code within direct scope of the project.
Instructions:
- Step 1: Open the file jsongenerator.py present inside project folder.
- Step 2: Import a built-in package called json.
- Step 3: Import the following from a file called employee.py:
A function called details
Variables called employee_name, age and title
- Step 4: Implement the create_dict() function that returns a dictionary given employee information.
4.1 Create and return a dictionary with three key-value pairs where
keys are string variables – “first_name”, “age” and “title” and their respective values are employee_name, age and title variables that we have imported from the employee module. Be sure to cast the values to the expected types.
Step 5:
- Use a function called dumps() from the json module using dot notation and pass the employee_dict dictionary that we have created to it. Return its value to a variable named json_object.
- The format of the same should look like:
- variable = json.dumps(dict)
- Step 6: Complete the write_json_to_file() function
- 6.1 Use a built-in function called open() and pass the output_file argument and “w” to it. Return the value of this function to a variable named newfile.
- 6.2 Call a function called write() over this variable newfile. Pass the json_object variable you created in Step 5 inside it.
- 6.3 Close this file by calling a built-in function close() directly on newfile. You don’t need to pass any arguments here.
- Step 7: Save the files.
- Step 8: Open the terminal to execute the files.
- Step 9: Run the code using the command (within project directory)
- python3 jsongenerator.py
Programming Assignment: Import and Scope Solution
Copy and paste this code..
jsongenerator.py
''' Import statements: 1. Import the built-in json python package 2. From employee.py, import the details function and the employee_name, age, title variables ''' ### WRITE IMPORT STATEMENTS HERE import json from employee import details,employee_name,age,title def create_dict(name, age, title): """ Creates a dictionary that stores an employee's information [IMPLEMENT ME] 1. Return a dictionary that maps "first_name" to name, "age" to age, and "title" to title Args: name: Name of employee age: Age of employee title: Title of employee Returns: dict - A dictionary that maps "first_name", "age", and "title" to the name, age, and title arguments, respectively. Make sure that the values are typecasted correctly (name - string, age - int, title - string) """ ### WRITE SOLUTION HERE d={"first_name":name,"age":int(age),"title":title} return d raise NotImplementedError() def write_json_to_file(json_obj, output_file): """ Write json string to file [IMPLEMENT ME] 1. Open a new file defined by output_file 2. Write json_obj to the new file Args: json_obj: json string containing employee information output_file: the file the json is being written to """ ### WRITE SOLUTION HERE newfile=open(output_file,'w') newfile.write(json_obj) newfile.close() return newfile raise NotImplementedError() def main(): # Print the contents of details() -- This should print the details of an employee details() # Create employee dictionary employee_dict = create_dict(employee_name, age, title) print("employee_dict: " + str(employee_dict)) ''' Use a function called dumps from the json module to convert employee_dict into a json string and store it in a variable called json_object. ''' ### WRITE YOUR CODE BY MODIFYING THE LINE BELOW # In the line below replace the None keyword with your code. # The format should look like: variable = json.dumps(dict) json_object = json.dumps(employee_dict) print("json_object: " + str(json_object)) # Write out the json object to file write_json_to_file(json_object, "employee.json") if __name__ == "__main__": main()