19 "ticket-{}".format(interaction.author), overwrites=overwrites
20 )
21 await interaction.channel.send(
22 "Ticket opened in #ticket-{}".format(interaction.author),23 complete_hidden=True,
24 )
25
16 member: discord.PermissionOverwrite(read_messages=True, send_messages=True),
17 }
18 await interaction.guild.create_text_channel(
19 "ticket-{}".format(interaction.author), overwrites=overwrites20 )
21 await interaction.channel.send(
22 "Ticket opened in #ticket-{}".format(interaction.author),
55 )
56
57 voice_client.play(
58 source, after=lambda e: print("Player error: %s" % e) if e else None59 )
60 while vc.is_playing():
61 await asyncio.sleep(0.1)
498 song = Song(source)
499
500 await ctx.voice_state.songs.put(song)
501 await ctx.send("Enqueued {}".format(str(source)))502
503 @_join.before_invoke
504 @_play.before_invoke
492 source = await YTDLSource.create_source(ctx, search, loop=self.bot.loop)
493 except YTDLError as e:
494 await ctx.send(
495 "An error occurred while processing this request: {}".format(str(e))496 )
497 else:
498 song = Song(source)
f-strings are the fastest way to format strings as compared to the following methods:
%
format()
str.join
+
operator to concatinate stringTemplate.substitute
Some less preferred ways to format strings are the following:
from string import Template
menu = ('eggs', 'spam', 42.4)
old_order = "%s and %s: %.2f ¤" % menu # [consider-using-f-string]
beginner_order = menu[0] + " and " + menu[1] + ": " + str(menu[2]) + " ¤"
joined_order = " and ".join(menu[:2])
format_order = "{} and {}: {:0.2f} ¤".format(menu[0], menu[1], menu[2])
named_format_order = "{eggs} and {spam}: {price:0.2f} ¤".format(eggs=menu[0], spam=menu[1], price=menu[2])
template_order = Template('$eggs and $spam: $price ¤').substitute(eggs=menu[0], spam=menu[1], price=menu[2])
Consider using f-strings as shown below:
menu = ('eggs', 'spam', 42.4)
f_string_order = f"{menu[0]} and {menu[1]}: {menu[2]:0.2f} ¤"