try something like this:
fc = 'tmppt1final'
dropFields = "DDlat_1; DDLon" # removed [ ] one test wanted them...next one didn't
alterFields = [["elev_ft", "Elev_FT"], ["elev_m", "Elev_M"], ["x", "X"], ["y", "Y"]]
arcpy.DeleteField_management(fc, dropFields)
for old, new in alterFields:
tmpName = ("{0}_tmp".format(old))
arcpy.AlterField_management(fc, old, tmpName)
arcpy.AlterField_management(fc, tmpName, new)
changing you "fc" and the dropFields (a list of fields, separated by a semi-colon) and AlterFields (oldname and new name, for each field)
I changed the field name....but you could adjust it for the alias. As mentioned earlier, if only changing alias, the fields seem to stay in the same order....changing the name puts the field at the end. So, you would need to update each field in order to get them back (I don't think there is a change field order command...but may need to look again for my purposes).
There are ways you could probably automate the new name with the first letter of a word always in Caps, etc....and skipping some fields you don't want that to happen on. There are other threads that talk about things like that, and Dan Patterson might have somethin in his blogs already....and he has magical things happening with lists, etc...but I tend to try to keep things simple for me in the future....I'm a good hack...not hacker. Couple others I can think of to tag here are Xander Bakker Darren Wiens
Edit: updated my code above to remove the [ ] on the dropFields list. For some reason my machine wanted them when testing....but once I had it in my script, it didn't go figure.