A method for predicting a life of a battery, comprising: obtaining a plurality of cycle numbers of the battery and a plurality of capacity data corresponding to the plurality of cycle numbers, wherein the plurality of cycle numbers are a plurality of cycle numbers of the battery at a plurality of time nodes in a previous time period; characterised in that the method further comprises: obtaining a plurality of sets of first fitting data by fitting the plurality of cycle numbers and the plurality of capacity data with a bi-exponential empirical model; obtaining a plurality of sets of second fitting data by fitting the plurality of cycle numbers and the plurality of capacity data with a box-cox transformation method; determining a first capacity error corresponding to the plurality of cycle numbers according to the plurality of sets of first fitting data and the plurality of capacity data; determining a second capacity error corresponding to the plurality of cycle numbers according to the plurality of sets of second fitting data and the plurality of capacity data; generating a battery-life prediction model according to the first capacity error, the second capacity error, the plurality of sets of first fitting data, and the plurality of sets of second fitting data; and determining a remaining useful life, RUL, of the battery according to a predetermined battery-capacity-value and the battery-life prediction model. obtaining a plurality of cycle numbers of the battery and a plurality of capacity data corresponding to the plurality of cycle numbers, wherein the plurality of cycle numbers are a plurality of cycle numbers of the battery at a plurality of time nodes in a previous time period; characterised in that the method further comprises: obtaining a plurality of sets of first fitting data by fitting the plurality of cycle numbers and the plurality of capacity data with a bi-exponential empirical model; obtaining a plurality of sets of second fitting data by fitting the plurality of cycle numbers and the plurality of capacity data with a box-cox transformation method; determining a first capacity error corresponding to the plurality of cycle numbers according to the plurality of sets of first fitting data and the plurality of capacity data; determining a second capacity error corresponding to the plurality of cycle numbers according to the plurality of sets of second fitting data and the plurality of capacity data; generating a battery-life prediction model according to the first capacity error, the second capacity error, the plurality of sets of first fitting data, and the plurality of sets of second fitting data; and determining a remaining useful life, RUL, of the battery according to a predetermined battery-capacity-value and the battery-life prediction model. obtaining a plurality of sets of first fitting data by fitting the plurality of cycle numbers and the plurality of capacity data with a bi-exponential empirical model; obtaining a plurality of sets of second fitting data by fitting the plurality of cycle numbers and the plurality of capacity data with a box-cox transformation method; determining a first capacity error corresponding to the plurality of cycle numbers according to the plurality of sets of first fitting data and the plurality of capacity data; determining a second capacity error corresponding to the plurality of cycle numbers according to the plurality of sets of second fitting data and the plurality of capacity data; generating a battery-life prediction model according to the first capacity error, the second capacity error, the plurality of sets of first fitting data, and the plurality of sets of second fitting data; and determining a remaining useful life, RUL, of the battery according to a predetermined battery-capacity-value and the battery-life prediction model.