@@ -470,10 +470,11 @@ def __setitem__(
470
470
key = cast (Sequence , key )
471
471
if len (key ) != len (value ) and not com .is_bool_indexer (key ):
472
472
msg = (
473
- "shape mismatch: value array of length '{}' does "
474
- "not match indexing result of length '{}'."
473
+ f"shape mismatch: value array of length '{ len (key )} ' "
474
+ "does not match indexing result of length "
475
+ f"'{ len (value )} '."
475
476
)
476
- raise ValueError (msg . format ( len ( key ), len ( value )) )
477
+ raise ValueError (msg )
477
478
elif not len (key ):
478
479
return
479
480
@@ -487,12 +488,10 @@ def __setitem__(
487
488
value = iNaT
488
489
else :
489
490
msg = (
490
- "'value' should be a '{scalar}', 'NaT', or array of those. "
491
- "Got '{typ}' instead."
492
- )
493
- raise TypeError (
494
- msg .format (scalar = self ._scalar_type .__name__ , typ = type (value ).__name__ )
491
+ f"'value' should be a '{ self ._scalar_type .__name__ } ', 'NaT', "
492
+ f"or array of those. Got '{ type (value ).__name__ } ' instead."
495
493
)
494
+ raise TypeError (msg )
496
495
self ._data [key ] = value
497
496
self ._maybe_clear_freq ()
498
497
@@ -532,8 +531,8 @@ def astype(self, dtype, copy=True):
532
531
) or is_float_dtype (dtype ):
533
532
# disallow conversion between datetime/timedelta,
534
533
# and conversions for any datetimelike to float
535
- msg = "Cannot cast {name } to dtype {dtype}"
536
- raise TypeError (msg . format ( name = type ( self ). __name__ , dtype = dtype ) )
534
+ msg = f "Cannot cast { type ( self ). __name__ } to dtype { dtype } "
535
+ raise TypeError (msg )
537
536
elif is_categorical_dtype (dtype ):
538
537
return Categorical (self , dtype = dtype )
539
538
else :
@@ -637,9 +636,7 @@ def searchsorted(self, value, side="left", sorter=None):
637
636
value = self ._scalar_from_string (value )
638
637
639
638
if not (isinstance (value , (self ._scalar_type , type (self ))) or isna (value )):
640
- raise ValueError (
641
- "Unexpected type for 'value': {valtype}" .format (valtype = type (value ))
642
- )
639
+ raise ValueError (f"Unexpected type for 'value': { type (value )} " )
643
640
644
641
self ._check_compatible_with (value )
645
642
if isinstance (value , type (self )):
@@ -759,8 +756,8 @@ def fillna(self, value=None, method=None, limit=None):
759
756
if is_array_like (value ):
760
757
if len (value ) != len (self ):
761
758
raise ValueError (
762
- "Length of 'value' does not match. Got ({}) "
763
- " expected {}" . format ( len (value ), len ( self ))
759
+ f "Length of 'value' does not match. Got ({ len ( value ) } ) "
760
+ f " expected { len (self )} "
764
761
)
765
762
value = value [mask ]
766
763
@@ -880,10 +877,8 @@ def _validate_frequency(cls, index, freq, **kwargs):
880
877
# raise a ValueError, which we re-raise with a more targeted
881
878
# message.
882
879
raise ValueError (
883
- "Inferred frequency {infer} from passed values "
884
- "does not conform to passed frequency {passed}" .format (
885
- infer = inferred , passed = freq .freqstr
886
- )
880
+ f"Inferred frequency { inferred } from passed values "
881
+ f"does not conform to passed frequency { freq .freqstr } "
887
882
)
888
883
889
884
# monotonicity/uniqueness properties are called via frequencies.infer_freq,
@@ -922,27 +917,21 @@ def _is_unique(self):
922
917
def _add_datetimelike_scalar (self , other ):
923
918
# Overriden by TimedeltaArray
924
919
raise TypeError (
925
- "cannot add {cls} and {typ}" .format (
926
- cls = type (self ).__name__ , typ = type (other ).__name__
927
- )
920
+ f"cannot add { type (self ).__name__ } and " f"{ type (other ).__name__ } "
928
921
)
929
922
930
923
_add_datetime_arraylike = _add_datetimelike_scalar
931
924
932
925
def _sub_datetimelike_scalar (self , other ):
933
926
# Overridden by DatetimeArray
934
927
assert other is not NaT
935
- raise TypeError (
936
- "cannot subtract a datelike from a {cls}" .format (cls = type (self ).__name__ )
937
- )
928
+ raise TypeError (f"cannot subtract a datelike from a { type (self ).__name__ } " )
938
929
939
930
_sub_datetime_arraylike = _sub_datetimelike_scalar
940
931
941
932
def _sub_period (self , other ):
942
933
# Overriden by PeriodArray
943
- raise TypeError (
944
- "cannot subtract Period from a {cls}" .format (cls = type (self ).__name__ )
945
- )
934
+ raise TypeError (f"cannot subtract Period from a { type (self ).__name__ } " )
946
935
947
936
def _add_offset (self , offset ):
948
937
raise AbstractMethodError (self )
@@ -1022,9 +1011,7 @@ def _add_nat(self):
1022
1011
"""
1023
1012
if is_period_dtype (self ):
1024
1013
raise TypeError (
1025
- "Cannot add {cls} and {typ}" .format (
1026
- cls = type (self ).__name__ , typ = type (NaT ).__name__
1027
- )
1014
+ f"Cannot add { type (self ).__name__ } and { type (NaT ).__name__ } "
1028
1015
)
1029
1016
1030
1017
# GH#19124 pd.NaT is treated like a timedelta for both timedelta
@@ -1064,9 +1051,7 @@ def _sub_period_array(self, other):
1064
1051
"""
1065
1052
if not is_period_dtype (self ):
1066
1053
raise TypeError (
1067
- "cannot subtract {dtype}-dtype from {cls}" .format (
1068
- dtype = other .dtype , cls = type (self ).__name__
1069
- )
1054
+ f"cannot subtract { other .dtype } -dtype from { type (self ).__name__ } "
1070
1055
)
1071
1056
1072
1057
if len (self ) != len (other ):
@@ -1140,7 +1125,7 @@ def _addsub_offset_array(self, other, op):
1140
1125
1141
1126
warnings .warn (
1142
1127
"Adding/subtracting array of DateOffsets to "
1143
- "{cls} not vectorized" . format ( cls = type (self ).__name__ ) ,
1128
+ f" { type (self ).__name__ } not vectorized" ,
1144
1129
PerformanceWarning ,
1145
1130
)
1146
1131
@@ -1313,17 +1298,11 @@ def __rsub__(self, other):
1313
1298
# GH#19959 datetime - datetime is well-defined as timedelta,
1314
1299
# but any other type - datetime is not well-defined.
1315
1300
raise TypeError (
1316
- "cannot subtract {cls} from {typ}" .format (
1317
- cls = type (self ).__name__ , typ = type (other ).__name__
1318
- )
1301
+ f"cannot subtract { type (self ).__name__ } from { type (other ).__name__ } "
1319
1302
)
1320
1303
elif is_period_dtype (self .dtype ) and is_timedelta64_dtype (other ):
1321
1304
# TODO: Can we simplify/generalize these cases at all?
1322
- raise TypeError (
1323
- "cannot subtract {cls} from {dtype}" .format (
1324
- cls = type (self ).__name__ , dtype = other .dtype
1325
- )
1326
- )
1305
+ raise TypeError (f"cannot subtract { type (self ).__name__ } from { other .dtype } " )
1327
1306
elif is_timedelta64_dtype (self .dtype ):
1328
1307
if lib .is_integer (other ) or is_integer_dtype (other ):
1329
1308
# need to subtract before negating, since that flips freq
@@ -1472,9 +1451,9 @@ def mean(self, skipna=True):
1472
1451
if is_period_dtype (self ):
1473
1452
# See discussion in GH#24757
1474
1453
raise TypeError (
1475
- "mean is not implemented for {cls } since the meaning is "
1476
- "ambiguous. An alternative is "
1477
- "obj.to_timestamp(how='start').mean()" . format ( cls = type ( self ). __name__ )
1454
+ f "mean is not implemented for { type ( self ). __name__ } since the "
1455
+ "meaning is ambiguous. An alternative is "
1456
+ "obj.to_timestamp(how='start').mean()"
1478
1457
)
1479
1458
1480
1459
mask = self .isna ()
@@ -1520,9 +1499,7 @@ def validate_periods(periods):
1520
1499
if lib .is_float (periods ):
1521
1500
periods = int (periods )
1522
1501
elif not lib .is_integer (periods ):
1523
- raise TypeError (
1524
- "periods must be a number, got {periods}" .format (periods = periods )
1525
- )
1502
+ raise TypeError (f"periods must be a number, got { periods } " )
1526
1503
return periods
1527
1504
1528
1505
@@ -1583,9 +1560,9 @@ def validate_inferred_freq(freq, inferred_freq, freq_infer):
1583
1560
if inferred_freq is not None :
1584
1561
if freq is not None and freq != inferred_freq :
1585
1562
raise ValueError (
1586
- "Inferred frequency {inferred } from passed "
1563
+ f "Inferred frequency { inferred_freq } from passed "
1587
1564
"values does not conform to passed frequency "
1588
- "{passed}" . format ( inferred = inferred_freq , passed = freq .freqstr )
1565
+ f" { freq .freqstr } "
1589
1566
)
1590
1567
elif freq is None :
1591
1568
freq = inferred_freq
0 commit comments