title: Most efficient way to have an f-string over multiple lines in Python
body: <p>I've written the following code:</p>
  <pre><code>class User:
      def __init__(self, first_name, last_name, gender, location):
          self.first_name = first_name
          self.last_name = last_name
          self.gender = gender
          self.location = location
          
      def describe_user(self):
          print(f&quot;User {self.first_name} {self.last_name} is a &quot; 
                f&quot;{self.gender} from {self.location}&quot;)
          
      def greet_user(self):
          print(f&quot;Hello there {self.first_name}, you come from the &quot;
                f&quot;{self.last_name} family. You currently reside in &quot;
                f&quot;{self.location}. Oh, I forgot to mention that you're &quot;
                f&quot;a {self.gender}. Have a nice day!&quot;)
  </code></pre>
  <p>This works, but I don't think it looks very clean.</p>
  <p>The way I initially tried to accomplish this, which seemed most natural to me was like this:</p>
  <pre><code>def describe_user(self):
      print(f&quot;User {self.first_name} {self.last_name} is a 
            {self.gender} from {self.location}&quot;)
  </code></pre>
  <p>But unfortunately that didn't work.  Is there a better way to do this?</p>