View a markdown version of this page

Riferimento rapido alle espressioni - Deadline Cloud

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Riferimento rapido alle espressioni

Le espressioni utilizzano un sottoinsieme della sintassi delle espressioni Python. I valori hanno uno dei tipibool,,int,, float stringpath, range_expr o. list[T] I parametri Job hanno la forma minuscola del tipo dichiarato, quindi un PATH parametro è un path valore e un parametro CHUNK[INT] task è un. range_expr Qualsiasi funzione può essere chiamata come metodo anche al suo primo argomento, quindi upper(Param.Name) e Param.Name.upper() sono uguali. Questa pagina elenca le parti del linguaggio più utilizzate dai modelli di lavoro. Per la libreria di funzioni completa, vedere la libreria di funzioni Open Job Description sul GitHub sito web.

Sono disponibili le seguenti variabili. I parametri del lavoro sono noti al momento della creazione del lavoro, quindi viene valutata un'espressione che utilizza solo Param valori. Le variabili di attività e sessione sono note solo al lavoratore, pertanto un'espressione che le utilizza viene sottoposta a controllo del tipo al momento dell'invio e valutata durante l'esecuzione dell'attività.

Variabile Tipo Description
Param.Name Tipo dichiarato Un valore del parametro di lavoro. Per LIST[PATH] i parametri PATH e, sono state applicate le regole di mappatura dei percorsi.
RawParam.Name string Il valore originale di un PATH parametro così come inviato, prima della mappatura del percorso. Utilizzatelo per manipolare un percorso da un altro sistema operativo prima di effettuare una chiamata. apply_path_mapping()
Task.Param.Name Tipo dichiarato Un valore del parametro dell'attività. Un CHUNK[INT] parametro è unrange_expr; list() chiamatelo per iterare i frame.
Task.File.Name, Env.File.Name path La posizione sul worker in cui è stato scritto un file incorporato.
Session.WorkingDirectory path La cartella di lavoro temporanea della sessione sul lavoratore.
Job.Name, Step.Name string Il nome del processo risolto e il nome del passo corrente.

I seguenti operatori e funzioni coprono la maggior parte della logica dei modelli.

Categoria Operatori e funzioni Esempio
Aritmetica + - * / // % **, abs(), min(), max(), sum(), floor(), ceil(), round() {{ min(Param.FrameRange) }}e {{ max(Param.FrameRange) }} per il primo e l'ultimo frame di un parametro di intervallo di frame
Comparazione e logica == != < <= > >=, in, not in, and, or, not, a if test else b {{ 'large' if Param.Epochs >= 100 else 'small' }}
Conversione string(), int(), float(), bool(), path(), list(), range_expr() {{ len(list(Task.Param.Frame)) }}
Stringhe upper(),lower(),strip(),replace(),split(),join(),startswith(),endswith(),zfill(), removeprefix()removesuffix(), affettare [start:stop] {{ zfill(Task.Param.Frame, 4) }}
Espressioni regolari re_match(), re_search(), re_findall(), re_sub(), re_split(), re_escape() {{ re_search(Param.Dataset.stem, r'_v(\d+)')[1] }}
Percorsi /unire, + aggiungere testo,,,.name,.stem,.suffix,.parent,.parts,with_suffix(),with_stem(), with_number() as_posix() apply_path_mapping() {{ Param.OutputPattern.with_number(Task.Param.Frame) }}
Elenchi len(), indicizzazione[i],,,[expr for x in list],sorted(), reversed() unique() flatten() range() {{ [Param.OutputDir / f for f in Param.Files] }}
Citazione dello script repr_sh()per bash, repr_pwsh() per PowerShell, repr_cmd() per Windows CMD, per repr_py() Python, per JSON repr_json() {{ repr_pwsh(list(Task.Param.Frame)) }}
Convalida fail(message)interrompe la creazione di posti di lavoro con un messaggio {{ Param.Count if Param.Count > 0 else fail('Count must be positive') }}

La with_number() funzione sostituisce il numero di frame in un nome di file, indipendentemente dal fatto che il nome contenga un segnaposto o un numero effettivo. Riconosce l'hash padding####, ad esempio printf-style, e una serie di cifre%04d, ad esempio, e assegna al risultato la stessa 0001 larghezza. Quindi il valore di un parametro può essere uno schema o il primo file di una sequenza:path('/renders/shot_####.exr'), e tutto corrisponde. path('/renders/shot_%04d.exr') path('/renders/shot_0001.exr') /renders/shot_0072.exr with_number(72) Quando il nome non contiene nessuna di queste, la funzione aggiunge un numero di quattro cifre alla radice.

Alcuni comportamenti differiscono da Python. orGli operatori and and restituiscono uno dei loro operandi e contano solo false e null contano come falso0, quindi una stringa vuota e un elenco vuoto no. In questo modo è possibile fornire un fallback per un valore non impostato: {{ Param.OutputName or Param.InputFile.stem }} utilizza il nome del file di input quando il parametro opzionale è null e una stringa vuota viene mantenuta come indicato. or La condizione in a if test else b deve essere booleana. I numeri interi sono a 64 bit e un overflow è un errore anziché un involucro silenzioso. Il confronto di valori di tipi diversi con == è false piuttosto che un errore, tranne per il int confronto float e string il confronto con. path I valori letterali JSONnull,true, false sono accettati insieme aNone, e. True False

Per maggiori informazioni, consulta le seguenti risorse: