DataFrame.append and Series.append were deprecated in pandas 1.4 and removed in pandas 2.0 (April 2023). Calling either raises AttributeError: 'DataFrame' object has no attribute 'append', which is confusing because Python lists have the same method name and the error reads like a typo.
The replacement is pd.concat([df, other], ignore_index=True). Note the shape difference: append was a method on one frame, while concat takes a list, so appending inside a loop becomes quadratic if you call concat each iteration, allocating a new frame every time.
The idiom that actually performs is to collect rows in a Python list of dicts and call pd.DataFrame(rows) once at the end, or collect frames in a list and call pd.concat(frames) once. For a single row, df.loc[len(df)] = values works but reallocates too. Also note that concat aligns on columns and fills missing ones with NaN, which upcasts integer columns to float, so pass ignore_index=True and check dtypes afterwards.