import random import winkelumrechnungen as wu from typing import List, Tuple def line2example(line: str) -> List: """ Line-String in Liste umwandeln :param line: Line-String :return: Liste mit Zahlenwerten """ split = line.split() example = [float(value) for value in split[:7]] for i, value in enumerate(example): if i < 6: example[i] = wu.deg2rad(value) # example[i] = value return example def get_random_examples(num: int, seed: int = None) -> List: """ Rückgabe zufälliger Beispiele beta0, lamb0, alpha0, beta1, lamb1, alpha1, s12 :param num: Anzahl zufälliger Beispiele :param seed: Random-Seed :return: Liste mit Beispielen """ if seed is not None: random.seed(seed) with open(r"C:\Users\moell\OneDrive\Desktop\Vorlesungen\Master-Projekt\Python_Masterprojekt\GHA_triaxial\Karney_2024_Testset.txt") as datei: lines = datei.readlines() examples = [] for i in range(num): example = line2example(lines[random.randint(0, len(lines) - 1)]) examples.append(example) return examples def get_examples(l_i: List) -> List: """ Rückgabe ausgewählter Beispiele beta0, lamb0, alpha0, beta1, lamb1, alpha1, s12 :param l_i: Liste von Indizes :return: Liste mit Beispielen """ with open("Karney_2024_Testset.txt") as datei: lines = datei.readlines() examples = [] for i in l_i: example = line2example(lines[i]) examples.append(example) return examples if __name__ == "__main__": get_random_examples(10)