View a markdown version of this page

표현식 빠른 참조 - 기한 클라우드

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

표현식 빠른 참조

표현식은 Python 표현식 구문의 하위 집합을 사용합니다. 값에는 bool, , int, float, string, path range_expr또는 유형 중 하나가 있습니다list[T]. 작업 파라미터는 선언된 유형의 소문자 형식을 가지므로 PATH 파라미터는 path 값이고 CHUNK[INT] 작업 파라미터는 입니다range_expr. 모든 함수는 첫 번째 인수에서 메서드로 호출될 수도 있으므로 upper(Param.Name) 및 Param.Name.upper()는 동일합니다. 이 페이지에는 작업 템플릿이 가장 많이 사용하는 언어의 부분이 나열됩니다. 전체 함수 라이브러리는 GitHub 웹 사이트의 Open Job Description 함수 라이브러리를 참조하세요.

다음 변수를 사용할 수 있습니다. 작업 파라미터는 작업이 생성될 때 알려져 있으므로 Param 값만 사용하는 표현식이 평가됩니다. 작업 및 세션 변수는 작업자에서만 알 수 있으므로 이를 사용하는 표현식은 제출 시 유형이 확인되고 작업이 실행될 때 평가됩니다.

변수 유형 설명
Param.Name 선언된 유형 작업 파라미터 값입니다. PATH 및 LIST[PATH] 파라미터의 경우 경로 매핑 규칙이 적용되었습니다.
RawParam.Name string 경로 매핑 전에 제출된 PATH 파라미터의 원래 값입니다. 를 호출하기 전에 다른 운영 체제의 경로를 조작하는 데 사용합니다apply_path_mapping().
Task.Param.Name 선언된 유형 작업 파라미터 값입니다. CHUNK[INT] 파라미터는 입니다. list()를 range_expr호출하여 프레임을 반복합니다.
Task.File.Name, Env.File.Name path 임베디드 파일이 작성된 작업자의 위치입니다.
Session.WorkingDirectory path 작업자에 대한 세션의 임시 작업 디렉터리입니다.
Job.Name, Step.Name string 확인된 작업 이름과 현재 단계 이름입니다.

다음 연산자와 함수는 대부분의 템플릿 로직을 다룹니다.

카테고리 연산자 및 함수 예제
Arithmetic + - * / // % **, abs(), min(), max(), sum(), floor(), ceil(), round() {{ min(Param.FrameRange) }} 프레임 범위 파라미터의 첫 번째 및 마지막 프레임에 {{ max(Param.FrameRange) }} 대한 및
비교 및 로직 == != < <= > >=, in, not in, and, or, not, a if test else b {{ 'large' if Param.Epochs >= 100 else 'small' }}
변환 string(), int(), float(), bool(), path(), list(), range_expr() {{ len(list(Task.Param.Frame)) }}
문자열 upper(), lower(), strip(), replace(), split(), join(), startswith(), endswith(), zfill(), , removeprefix(), removesuffix(), 자르기 [start:stop] {{ zfill(Task.Param.Frame, 4) }}
정규식 re_match(), re_search(), re_findall(), re_sub(), re_split(), re_escape() {{ re_search(Param.Dataset.stem, r'_v(\d+)')[1] }}
경로 / 조인, 텍스트 + 추가, , .name.stem, .suffix, .parent, .parts, with_suffix(), with_stem(), with_number(), as_posix(), apply_path_mapping() {{ Param.OutputPattern.with_number(Task.Param.Frame) }}
Lists len(), 인덱싱, [i], [expr for x in list]sorted(), reversed(), unique(), flatten(), range() {{ [Param.OutputDir / f for f in Param.Files] }}
스크립트 인용 repr_sh() for bash, repr_pwsh() for PowerShell, repr_cmd() for Windows CMD, repr_py() for Python, repr_json() for JSON {{ repr_pwsh(list(Task.Param.Frame)) }}
검증 fail(message) 메시지와 함께 작업 생성을 중지합니다. {{ Param.Count if Param.Count > 0 else fail('Count must be positive') }}

with_number() 함수는 이름에 자리 표시자 또는 실제 번호가 있는지 여부에 관계없이 파일 이름의 프레임 번호를 대체합니다. 와 같은 해시 패딩####, printf 스타일 %04d,와 같은 숫자 실행0001을 인식하고 결과를 동일한 너비로 패딩합니다. 따라서 파라미터 값은 패턴이거나 시퀀스의 첫 번째 파일일 수 있습니다. path('/renders/shot_####.exr'), path('/renders/shot_%04d.exr')및 path('/renders/shot_0001.exr') 모두에 /renders/shot_0072.exr를 제공합니다with_number(72). 이름에이 중 하나가 없는 경우 함수는 4자리 숫자를 어간에 추가합니다.

몇 가지 동작은 Python과 다릅니다. and 및 or 연산자는 피연산자 중 하나를 반환하고 및 만 false로 false null 계산되므로 0, 빈 문자열 및 빈 목록은 반환하지 않습니다. 이렇게 or 하면 설정되지 않은 값에 대한 대체를 제공할 수 있습니다.는 선택적 파라미터가 일 때 입력 파일의 이름을 {{ Param.OutputName or Param.InputFile.stem }} 사용하고 null빈 문자열은 지정된 대로 유지됩니다. 의 조건은 부울이어야 a if test else b 합니다. 정수는 64비트이고 오버플로는 자동 래핑이 아닌 오류입니다. 가와 비교float되고 ==가와 int 비교된다는 점을 제외하면 다른 유형의 값을와 string 비교하는 것은 오류가 false 아닙니다path. JSON 리터럴 null, true및 false는 None, True및와 함께 허용됩니다False.

자세한 정보는 다음 자료를 참조하세요.