From fcd3e87793f44c20c92bdadb4c12c4915b7b411e Mon Sep 17 00:00:00 2001 From: luk3yx Date: Sat, 19 Mar 2022 17:12:19 +1300 Subject: Initial public commit --- int.py | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 int.py (limited to 'int.py') diff --git a/int.py b/int.py new file mode 100644 index 0000000..b323aa2 --- /dev/null +++ b/int.py @@ -0,0 +1,41 @@ +#!/usr/bin/env python3 +# +# .int: Check if something is a number +# +# Copyright © 2019-2021 by luk3yx +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# + +@register_command('int') +def int_cmd(irc, hostmask, is_admin, args): + """ Check if something is a number. """ + + number = args[1].replace(' ', '') + try: + number = int(number) + desc = 'an integer' + except ValueError: + try: + number = float(number) + desc = 'a floating-point number' + except ValueError: + try: + number = complex(number.replace('i', 'j')) + desc = 'a complex number' + except ValueError: + number = args[1] + desc = 'not a number' + + irc.msg(args[0], hostmask[0] + ': {} is {}.'.format(repr(number), desc)) -- cgit v1.2.3