What would be an efficient way of preventing sequential scan if data is partitioned by list, when it comes to updating multiple partitions?
If the index would only be used for a single UPDATE and never again after that, it is probably a good idea not to create it.
The UPDATE will then run for a long time, but if that is a one-time occurrence and you can make sure that there are no other big data modifications going on at the same time (which could lead to deadlocks or table bloat), that should be acceptable.
After all, creating an index also takes a long time.