Oh Gott ist das peinlich... Danke. Ich schiebs mal auf die Kopfschmerzen
Ankündigung
Einklappen
Keine Ankündigung bisher.
User helfen User - Programmieren
Einklappen
X
-
Gast
quick and dirty python:Zitat von BUSFAHRERMoin,
hab ne dreistelle Versionsnummer (z.B. 1.1.2) und brauche ne einfache Funktion, die zwei Versionsnummern miteinander vergleicht (z.B. 1.3.4 und 1.6.1) und zurückgibt, welche höher ist. Steh da grad aufm Schlauch
def get_current_ver(v1, v2):
v1_int = int(v1.replace(".", ""))
v2_int = int(v2.replace(".", ""))
if v1_int
Kommentar
-
Mit welcher Skriptsprache sollte ich an die GitLab API ran? Bin fit in Shell, Perl, (Python). Habe python-gitlab gefunden - nutzen oder connection/request selbst aufbauen?
Kommentar
-
kommt drauf an was du machen willst. Denke am einfachsten geht es mit PythonZitat von HayzleMit welcher Skriptsprache sollte ich an die GitLab API ran? Bin fit in Shell, Perl, (Python). Habe python-gitlab gefunden - nutzen oder connection/request selbst aufbauen?
Kommentar
-
Damit kannst du aber nur Versionen vergleichen, die die gleiche Länge und den gleichen Aufbau haben.Zitat von mehLquick and dirty python:
v1 = 2.10.4
v2 = 3.1.0
Da würde er v1 als neuer zurückgeben, da 2104 > 310.
Nächstes Problem:
v1 = 4.0.13
v2 = 30.0.1
Daher so machen, wie QTPie schreibt. Einfach in ein Array trennen und dann vergleichen.
Kommentar
-
Gast
da hast du wohl recht! war ja auch quick n dirty ;DZitat von DerKiLLaDamit kannst du aber nur Versionen vergleichen, die die gleiche Länge und den gleichen Aufbau haben.Zitat von mehLquick and dirty python:
v1 = 2.10.4
v2 = 3.1.0
Da würde er v1 als neuer zurückgeben, da 2104 > 310.
Nächstes Problem:
v1 = 4.0.13
v2 = 30.0.1
Daher so machen, wie QTPie schreibt. Einfach in ein Array trennen und dann vergleichen.
Kommentar
-
Gast
Hier jemand Ahnung von Funktionaler Programmierung? Fickt grade meinen Kopf.
Sprache ist Ocaml.
Will eigentlich nur ein Element aus einer Liste entfernen wenn Element.id = id
let rec remove_by_id id list =
match list with
[] -> []
| x::rest -> if (x.id=id) then rest else (remove_by_id id list)
Das funktioniert natürlich nicht, weil ich hier meine Liste nie kleiner mache. Ich raffe aber nicht wie ich in meiner Rekursion praktisch ein Element weiter gehe aber gleichzeitig die Liste vor dem Element erhalte. Am Ende soll die alte Liste ohne Elemente wo Element.id = id ist zurückgeben.
Edit:
Ich glaub ich habs.
| x::rest -> if (x.id=id) then rest else x::(remove_by_id id rest)
sollte passen
Kommentar
-
Hab mal ne Frage an die Python Experten hier:
Kann man aus einem .py File so ein "standalone" programm erstellen? Sprich, dass man sich außer der python installation um nichts mehr kümmern muss, um das .py file auszuführen und den gewünschten output zu erhalten? Ich kenne leider das fachliche wording nicht genau dafür, deswegen grad so umständlich beschrieben.
Als konkretes Beispiel: Ich hab ein skript mit pandas geschrieben, um csv Dateien, die man von einer Seite runterlädt, entsprechend in ein anderes Format zu bringen. Obv. muss man erst alle Module manuell über pip o.ä. installieren und natürlich auch pip selbst, um das Skript so ausführen zu können. Ich will allerdings, dass man als Anwender einfach maximal Python installieren muss und dann meinetwegen im terminal schreibt: skript.py --beispiel.csv
Sprich wie in Java, wo man einfach nur die JRE installiert haben muss und dann kann man eine einfache executable ausführen und muss sich sonst um nichts kümmern.
Besten Dank für die Hilfe!
Kommentar
-
Gast
was du suchst lautet Pyinstaller:
https://www.pyinstaller.org/
demit kannst du dir dein PythonProjekt in eine ausführbare Datei gießen und hast keine weiteren Abhängigkeiten. Ist aber zum Teil bisschen anstrengend einzustellen, je nach Größe des Projekts.
Kommentar
-
Ist vllt. ein 5-Zeiler das Skript, nicht wirklich ein Projekt. Ich probier's mal mit dem Ding. Danke!Zitat von mehLwas du suchst lautet Pyinstaller:
https://www.pyinstaller.org/
demit kannst du dir dein PythonProjekt in eine ausführbare Datei gießen und hast keine weiteren Abhängigkeiten. Ist aber zum Teil bisschen anstrengend einzustellen, je nach Größe des Projekts.
Kommentar
-
Gast
Kennt jemand nen Algorithmus, um die längsten Unterfolgen einer Liste zu ermitteln, die mehr als einmal vorkommen?
Beispiel:
Liste [ 1;2;3;4;5;1;2 ] -> [ 1;2 ]
Liste [1;1;2;2;1;1] -> [1;1]
Liste [1;2;3;1;2;3] -> [1;2;3]
Gibts da was effizienteres als für jede Unterfolge nochmal die Liste zu checken?
Kommentar
-
Vielleicht könnte nen greedy algorithmus funktionieren.Zitat von QTPieKennt jemand nen Algorithmus, um die längsten Unterfolgen einer Liste zu ermitteln, die mehr als einmal vorkommen?
Beispiel:
Liste [ 1;2;3;4;5;1;2 ] -> [ 1;2 ]
Liste [1;1;2;2;1;1] -> [1;1]
Liste [1;2;3;1;2;3] -> [1;2;3]
Gibts da was effizienteres als für jede Unterfolge nochmal die Liste zu checken?
Mein Ansatz würde auf folgend Annahme beruhen: "Jede Subfolge von Sub_Max kommt maximal so oft vor wie Sub_Max und hat tritt am häufigsten auf in ihrer Menge von Subfolgen"
Sorry richtig formal ist mir zu anstrengend. Aber wenn die Annahme hält, dann verbesserst du im worst case fall die Laufzeit nicht aber im average-case definitiv massiv.
Kommentar
-
hallo leute ich bräuchte mal hilfe beim c programmieren, bin leider ziemlich schlecht da drin. die aufgabe lautet :
-weisen sie den elementen des arrays durch zugriff über einen zeiger in einer for schleife über alle array elemente fortlaufende werte zu
- greifen sie anschliessend in drei geschachtelten for schleifen in Array Schreibweise auf das Array zu und geben sie die arrayelemente aus
was ich bis jetzt hab sieht so aus :
[spoiler]int a[3][3][3];
int x=1;
int*zeiger;
for(int i=0; i
Kommentar
Kommentar