Back to Freecodecamp

Challenge 220: Largest Number

curriculum/challenges/english/blocks/daily-coding-challenges-python/699c8e045ee7cb94ed2322db.md

latest1.4 KB
Original Source

--description--

Given a string of numbers separated by various punctuation, return the largest number.

  • The given string will only contain numbers and separators.
  • Separators can be commas (","), exclamation points ("!"), question marks ("?"), colons (":"), or semi-colons (";").

--hints--

largest_number("1,2") should return 2.

js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(largest_number("1,2"), 2)`)
}})

largest_number("4;15:60,26?52!0") should return 60.

js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(largest_number("4;15:60,26?52!0"), 60)`)
}})

largest_number("-402,-1032!-569:-947;-633?-800!-1012;-402,-723?-8102!-3011") should return -402.

js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(largest_number("-402,-1032!-569:-947;-633?-800!-1012;-402,-723?-8102!-3011"), -402)`)
}})

largest_number("12;-50,99.9,49.1!-10.1?88?16") should return 99.9.

js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(largest_number("12;-50,99.9,49.1!-10.1?88?16"), 99.9)`)
}})

--seed--

--seed-contents--

py
def largest_number(s):

    return s

--solutions--

py
import re
def largest_number(s):
    numbers = [float(n) for n in re.split(r'[,!?:;]', s)]
    return max(numbers)