Email validator: Difference between revisions
Line 10: | Line 10: | ||
== The Problem == | == The Problem == | ||
You should write a program that asks a user to enter an email address. Your | You should write a program that asks a user to enter an email address. Your program should check if the email: | ||
# has an @ sign | # has an @ sign |
Revision as of 12:58, 4 April 2016
This is a problem set. Some of these are easy, others are far more difficult. The purpose of these problems sets are to HELP YOU THINK THROUGH problems. The solution is at the bottom of this page, but please don't look at it until you have tried (and failed) at least three or four times.
What is this problem set trying to do[edit]
You are going to use very simple if not in logic here. If you complete this problem set, you will have shown me you sort of understand how to test a string for a specific character. You will have ALSO shown me that you know how to program a very simple validator.
The Problem[edit]
You should write a program that asks a user to enter an email address. Your program should check if the email:
- has an @ sign
- has a period .
- has a common top level domain (org, com)
Some Code to Get You Started[edit]
email = raw_input("Enter your email ")
Take This Further[edit]
- you can test for a @ and a . Could you also test for common misspellings?
- if you can test for common misspellings, could you suggest the correct spelling?
- we can check for common .com, .org, addresses but what about other top level domain names click here for a fairly scary list of them
How you will be assessed[edit]
Every problem set is a formative assignment. Please click here to see how you will be graded
References[edit]
One Possible Solution[edit]
Click the expand link to see one possible solution, but NOT before you have tried and failed!
list=[2,3,3,2,3,2,3,9,7,3,4,8,1,2,8,7,6,5,8,9,1,2,3,2,1,4,3,2,1,4,5,4,1,6,9,6,1,4,2,3,5]
def mean(list):
answer = sum(list)
mean = answer / len(list)
return mean
def mode(list):
frequency = {}
highest = max(list)
lowest = min(list)
# in this loop, we simply update our dictionary named "frequency with the count of values.
for i in range(lowest,highest+1):
frequency.update({i:list.count(i)})
values = frequency.values()
keys = frequency.keys()
mode = keys[values.index(max(values))]
return mode
def median(list):
new_list = sorted(list)
if len(new_list) % 2 == 1:
median = new_list[len(list)/2]
return median
print("the mean of list is: " + str(mean(list)))
print("the median of list is: " + str(median(list)))
print("the mode of list is: " + str(mode(list)))