How about something like:
>>> def t1(*argv):
... value = 0
... for n in argv:
... value *= 1_000
... value += n
... return value
>>> t1(123, 456, 789)
Similarly, for define t2 to use 1_000_000, t3 to use 1_000_000_000 and so on, instead of 1_000. For really big numbers, you might want to use t10.
I think something like
gives a nice representation of a 90 digit number.
If you're dealing with really big integers (say 1000 digits or more) then you might be want to use https://pypi.org/project/gmpy2/
, in which case you'll appreciate the extra flexibility provided by t10. (This would allow t10 to return a gmpy integer, if import gmpy2 succeeds.)
Finally, perhaps really big numbers should be stored as data, rather than placed in source code files. (For example, this would allow these large pieces of data to be verified, via a secure hash.)