mirror of
https://github.com/ytdl-org/youtube-dl.git
synced 2026-04-19 21:55:17 -04:00
[utils] Let int_or_none() accept a base, like int()
This commit is contained in:
+3
-2
@@ -3852,14 +3852,15 @@ class PUTRequest(compat_urllib_request.Request):
|
||||
return 'PUT'
|
||||
|
||||
|
||||
def int_or_none(v, scale=1, default=None, get_attr=None, invscale=1):
|
||||
def int_or_none(v, scale=1, default=None, get_attr=None, invscale=1, base=None):
|
||||
if get_attr:
|
||||
if v is not None:
|
||||
v = getattr(v, get_attr, None)
|
||||
if v in (None, ''):
|
||||
return default
|
||||
try:
|
||||
return int(v) * invscale // scale
|
||||
# like int, raise if base is specified and v is not a string
|
||||
return (int(v) if base is None else int(v, base=base)) * invscale // scale
|
||||
except (ValueError, TypeError, OverflowError):
|
||||
return default
|
||||
|
||||
|
||||
Reference in New Issue
Block a user