diff --git a/basics/variable.py b/basics/variable.py new file mode 100644 index 0000000..10fc208 --- /dev/null +++ b/basics/variable.py @@ -0,0 +1,63 @@ +def main(): + """ + >>> a = 3 + >>> b = 4 + >>> a + b + 7 + >>> a - b + -1 + >>> a * b + 12 + >>> a / b + 0.75 + >>> a // b + 0 + >>> a % b + 3 + >>> 3 ** 4 + 81 + + >>> type(3) + + >>> type(3.14) + + >>> type('a') + + >>> type("abc") + + >>> type(True) + + >>> type(None) + + >>> type(3 + 4j) + + + >>> int(3.14) + 3 + >>> int(-3) + -3 + >>> float("3.14") + 3.14 + >>> str(3.14) + '3.14' + >>> str(3 + 4j) + '(3+4j)' + >>> chr(65) + 'A' + >>> chr(97) + 'a' + >>> ord("a") + 97 + >>> ord("A") + 65 + >>> chr(ord('a') - 32) + 'A' + >>> chr(ord('A') + 32) + 'a' + """ + + +if __name__ == "__main__": + from doctest import testmod + + testmod() diff --git a/conversions/__init__.py b/conversions/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/conversions/fahrenheit_to_celsius.py b/conversions/fahrenheit_to_celsius.py new file mode 100644 index 0000000..ea342d3 --- /dev/null +++ b/conversions/fahrenheit_to_celsius.py @@ -0,0 +1,19 @@ +""" +https://en.wikipedia.org/wiki/Fahrenheit +""" + + +def fahrenheit_to_celsius(temperature: float) -> float: + """ + >>> fahrenheit_to_celsius(32) + 0.0 + >>> fahrenheit_to_celsius(39) + 3.888888888888889 + """ + return 5 * (temperature - 32) / 9 + + +if __name__ == "__main__": + from doctest import testmod + + testmod() diff --git a/maths/median.py b/maths/median.py index d34144f..f4681e0 100644 --- a/maths/median.py +++ b/maths/median.py @@ -22,7 +22,8 @@ def median(numbers): numbers = sorted(numbers) mid_index = len(numbers) // 2 return ( - (numbers[mid_index] + numbers[mid_index - 1]) / 2 if mid_index % 2 == 0 + (numbers[mid_index] + numbers[mid_index - 1]) / 2 + if mid_index % 2 == 0 else numbers[mid_index] ) diff --git a/maths/mode.py b/maths/mode.py new file mode 100644 index 0000000..f4df405 --- /dev/null +++ b/maths/mode.py @@ -0,0 +1,33 @@ +""" +https://en.wikipedia.org/wiki/Mode_(statistics) +""" + + +def mode(numbers): + """ + Calculate mode of a list numbers. + :param numbers: the numbers + :return: mode number of the numbers. + + >>> mode([1, 2, 2, 3, 4, 7, 9]) + 2 + """ + max_count = 1 + mode_number = numbers[0] + + for number in numbers: + count = 0 + for temp in numbers: + if temp == number: + count += 1 + if count > max_count: + max_count = count + mode_number = number + + return mode_number + + +if __name__ == "__main__": + from doctest import testmod + + testmod()