I'm new to python im looking for a code to bubble sort a list of words.
mylist = [12, 5, 13, 8, 9, 65]
def bubble(badList):
length = len(badList) - 1
unsorted = True
while unsorted:
for element in range(0,length):
unsorted = False
if badList[element] > badList[element + 1]:
hold = badList[element + 1]
badList[element + 1] = badList[element]
badList[element] = hold
print badList
else:
unsorted = True
print bubble(mylist)
this code does it with numbers i want one that does it with words. Thanks
One of the many cool things about Python is that equality and comparison operators work for strings just as they do with numbers. For example, how to compare that two numbers are the same?
7 == 7 # true!
How about two strings?
"Hello world".equals("Hello world") // Java...
"Hello world" == "Hello world" # Python!
Now to comparators. Python uses lexicographic ordering to compare strings. Basically, it looks at the first character from each string and says, "which is bigger?". If they are the same, it continues on down the string. So a few examples:
"ABC" > "BAC" # false, because the character B is greater than A
"AAAB" < "AAAC" # true, because the character B is less than C
So, your code will work no matter if mylist
is comprised of ints or of strings.