When they copy paste the text to editor and press save, that's where the trouble starts. When saving, you must specify encoding, or be at the mercy of some default like "ANSI". A text file cannot be saved without using some kind of encoding.
It might not work because you have declared # -*- coding: utf-8 -*-
in your file, the text editor saving the file in "ANSI" has no knowledge of this and leave it as is of course. So the parser will try to read the file as UTF-8 and fail because it's not UTF-8.
You could just use \uxxxx
escapes for non-ASCII characters in the source.
So instead of:
str = u"€"
Do
str = u"\u20AC"