Question

using Python: Write a function named safe input(prompt,type) that works like the Python input function, except...

using Python:

Write a function named safe input(prompt,type) that works like the Python input function, except that it only accepts the specified type of input. The function takes two arguments:
r prompt: str
r type: int, float, str
The function will keep prompting for input until correct input of the specified type is entered.
The function returns the input. If the input was specified to be a number ( float or int), the value returned will be of the correct type; that is, the function will perform the conversion.
The default for a prompt is the empty string. The default for the type is string.

Homework Answers

Answer #1

Ans:

'''

The required python function for implementing the above given requirements of the program is as follows:

'''

# Program:

# Required function
def safe_input(prompt, type_=str):
if(type_ not in (str, int, float)):
raise ValueError("Expected str, int or float.")

while True:
test = input(prompt)
try:
ret = type_(test)
except ValueError:
print("Invalid type, enter again.")
else:
break

return ret


test = safe_input("Enter a string: ")
print ('"{}" is a {}'.format(test,type(test)))
test = safe_input("Enter an integer: ",int)
print ('"{}" is a {}'.format(test,type(test)))
test = safe_input("Enter a float: ",float)
print ('"{}" is a {}'.format(test,type(test)))   
test = safe_input("Enter a string: ")
print ('"{}" is a {}'.format(test,type(test)))
test = safe_input("Enter an integer: ",int)
print ('"{}" is a {}'.format(test,type(test)))
test = safe_input("Enter a float: ",float)
print ('"{}" is a {}'.format(test,type(test)))
test = safe_input("Enter a string: ")
print ('"{}" is a {}'.format(test,type(test)))
test = safe_input("Enter an integer: ", int)
print ('"{}" is a {}'.format(test,type(test)))
test = safe_input("Enter a float: ", float)
print ('"{}" is a {}'.format(test,type(test)))

# OUTPUT OF A SAMPLE RUN:

# PLEASE DO LIKE AND UPVOTE IF THIS WAS HELPFUL!

# THANK YOU SO MUCH IN ADVANCE!

Know the answer?
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for?
Ask your own homework help question
Similar Questions
convert this code to accept int value instead of float values using python. Make sure to...
convert this code to accept int value instead of float values using python. Make sure to follow the same code. do not change the steps and make sure to point to what code you replaced. make sure to have 2 files Method:----------------------- #define a python user difined method def get_float_val (prompt): is_num = False str_val = input (prompt) #prming read for our while #while is_num == False: (ignore this but it works) old school while not is_num: try: value =...
In C++ Employee Class Write a class named Employee (see definition below), create an array of...
In C++ Employee Class Write a class named Employee (see definition below), create an array of Employee objects, and process the array using three functions. In main create an array of 100 Employee objects using the default constructor. The program will repeatedly execute four menu items selected by the user, in main: 1) in a function, store in the array of Employee objects the user-entered data shown below (but program to allow an unknown number of objects to be stored,...
STRICT DOWNVOTE IF NOT DONE FULLY, WILL REPORT ALSO IF COPY PASTED OR MODIFIED ANSWER Develop...
STRICT DOWNVOTE IF NOT DONE FULLY, WILL REPORT ALSO IF COPY PASTED OR MODIFIED ANSWER Develop a class, using templates, to provide functionality for a set of recursive functions. The functions specified as recursive must be written recursively (not iterativly). The UML class specifications are provided below. A main will be provided. Additionally, a make file will need to be developed and submitted. ● Recursion Set Class The recursion set template class will implement the template functions. recursionSet -length: int...
Complete a Java program named ARMgr that maintains customer accounts receivable in a database. The code...
Complete a Java program named ARMgr that maintains customer accounts receivable in a database. The code to initialize the CustomerAccountsDB database table and add a set of customer accounts is provided. Finish the code in these 3 methods in CustomerAccountDB.java to update or query the database: -purchase(double amountOfPurchase) -payment(double amountOfPayment) -getCustomerName() Hint: For getCustomerName(), look at the getAccountBalance() method to see an example of querying data from the database. For the purchase() and payment() methods, look at the addCustomerAccount() method...
You will write a program that loops until the user selects 0 to exit. In the...
You will write a program that loops until the user selects 0 to exit. In the loop the user interactively selects a menu choice to compress or decompress a file. There are three menu options: Option 0: allows the user to exit the program. Option 1: allows the user to compress the specified input file and store the result in an output file. Option 2: allows the user to decompress the specified input file and store the result in an...
ADVERTISEMENT
Need Online Homework Help?

Get Answers For Free
Most questions answered within 1 hours.

Ask a Question
ADVERTISEMENT