I recently wrote an article for Gamasutra on scripting languages and game engines.
Whether it be Lua or Python or some other scripting language, I think there is a lot to be said about not having to compile your code after every change. It makes iteration much faster to be able to be playing the game and be writing code changes to improve it while it's running and have those changes simply update.
I don't have a strong preference between Lua and Python other than I prefer Lua's C++ like nature and it's small and fast. Our engine, Cider, can use any but our next generation of games will be using Lua.
Using Lua means other people could, in effect, completely mod up our games to be completely different because the gameplay is largely available.
Traditionally, performance is an issue in using scripting. But that was before we had a core-neutral engine core: Nitrous. If you have a 4 core system (8 logical threads) then scripting becomes a non-issue. At that point, it's really video card stuff that becomes the limiting factor.
I'm a total convert. The only thing I don't love, which we have to deal with still, is the debugging.