Why not just use the apply function?:
df["ROMol"] = df[args.smi_column].apply(lambda x: pybel.readstring("smi", x))
Not only is it cleaner but should also be more efficient.
If you are not constrained to using pybel, RDKit has utility functions to do exactly what you want.