Python 如何在无回路的环境中生成唯一的uuid

Python 如何在无回路的环境中生成唯一的uuid,python,pandas,Python,Pandas,目前,我正在使用如下循环在每一行生成唯一的uuid- df['uuid'] = df.apply(lambda x: uuid.uuid4(), axis=1) 有没有不使用循环的方法可以做到这一点?仍然是一个循环,但比当前的方法快一点 df['uuid'] = [uuid.uuid4() for x in range(df.shape[0])] 每个回路24.4µs±2.31µs(7次运行的平均值±标准偏差,每个10000个回路) 使用apply df['uuid'] = df.apply

目前,我正在使用如下循环在每一行生成唯一的uuid-

df['uuid'] = df.apply(lambda x: uuid.uuid4(), axis=1)

有没有不使用循环的方法可以做到这一点?

仍然是一个循环,但比当前的方法快一点

df['uuid'] = [uuid.uuid4() for x in range(df.shape[0])]
每个回路24.4µs±2.31µs(7次运行的平均值±标准偏差,每个10000个回路)

使用apply

df['uuid'] = df.apply(lambda x: uuid.uuid4(), axis=1)
每个回路1.25 ms±39.1µs(7次运行的平均值±标准偏差,每个1000个回路)


仍然是一个循环,但比当前方式快一点

df['uuid'] = [uuid.uuid4() for x in range(df.shape[0])]
每个回路24.4µs±2.31µs(7次运行的平均值±标准偏差,每个10000个回路)

使用apply

df['uuid'] = df.apply(lambda x: uuid.uuid4(), axis=1)
每个回路1.25 ms±39.1µs(7次运行的平均值±标准偏差,每个1000个回路)