ich einen Code haben, der etwas tut, wie:Python: Split eine durch Kommata getrennte Zeichenfolge direkt in einen Satz
if string in comma_delimited_string.split(','):
return True
This website sagt, dass die Mitgliedschaft Tests mit Sätzen und dicts viel schneller ist, dass mit Listen oder Tupel. Ich weiß, set(comma_delimited_string.split(','))
würde Geschwindigkeit nicht verbessern, weil eine Liste noch erstellt wird, bevor es in ein Set konvertiert wird (oder zumindest schien es zu verlangsamen, wenn ich es zeitlich).
Ich frage mich dann, (meistens aus Neugier als echter Vorteil für meinen Code), gibt es eine Möglichkeit, den gleichen Effekt von comma_delimited_string.split(',')
zu erreichen, sondern direkt ein Set, anstatt einer Liste, mit der Absicht zu beschleunigen die obige Operation?
@Bakuriu Danke für die Antwort - in meinem Fall betrachte ich Dokumentnummern, die ziemlich mehrdeutig sind (zB da können die Dokumente '' 10'' und '' 103'' sein), also eine reine 'Zeichenkette in Komma_limit_string' ist nicht ganz zutreffend. Also, ich denke, Sie sagen, der einzige Weg, um eine direkte Umwandlung von Komma-Trennzeichen in eine Menge so schnell wie '.split 'würde es in C schreiben zu machen? .... nicht so bald. – dieggsy
@therockmandolinist Ja, das ist es, was ich sage. Sie müssten den Code für 'split' kopieren und einfügen und stattdessen ein Set anstelle einer Liste verwenden. Es ist ziemlich mühsam, also würde ich das nur tun, wenn es entscheidend ist, dass diese Überprüfung so schnell wie möglich sein muss ... – Bakuriu