Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
68 views
in Technique[技术] by (71.8m points)

python - use same function for different types

I have following function:

def calculate_digits(number: Union[int, float, str]) -> int:
    absolute_value: float = abs(number)
    rounded_value: int = math.floor(absolute_value)
    total_digits_needed: int = calculate_length_integer(rounded_value)
    return total_digits_needed

As you can see, I want to use this for different python types : int, float, str... As the abs() only works for floats I was wondering, how do I deal best with this? Do I need to write a function with if, elsif statement to do this, or is there a better way to do this?

question from:https://stackoverflow.com/questions/65871133/use-same-function-for-different-types

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

For me abs() works on int too... I'm using python 3.9.

For example the code below works for me at least:

number = abs(3)

Check if you need to update


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...