값 계산 도구의 해당 상자에 다음을 붙여 넣습니다.
표현 :
multivaluesToCsv(r"%Output CSV File Location%", "%Output CSV File Name%", "%Feature Class Names%", "%Minimum Distance Values%", "%Average Distance Values%", "%Maximum Distance Values%")
- 이 용도 에 줄 변수 치환 함수로 모델 변수를 전달한다. 모델 변수 이름과 일치하도록 조정하십시오.
- 는
r
전에 "%Output CSV File Location%"
중요 :이이이 있음을 나타냅니다 날 문자열 ; Windows 파일 시스템 경로에는 일반적으로 백 슬래시 ( Python 의 이스케이프 문자) 가 포함되므로 Python이 백 슬래시와 후속 문자를 특수 문자 시퀀스로 잘못 해석하지 못하도록하려면이를 사용해야합니다.
- 인라인 변수를 따옴표로 묶어야합니다. 파이썬이 없으면 문자열 대신 식별자라고 생각하기 때문입니다.
코드 블록 :
import os, csv
def multivaluesToCsv(csvfilepath, csvfilename, fcnames, minvalues, avgvalues, maxvalues):
ext = 'csv' # Define output file extension (e.g. csv or txt)
header = ['FC', 'MIN', 'AVG', 'MAX'] # Define header row (column names)
# Join CSV file path and name, adding extension if necessary
csvfile = os.path.join(csvfilepath, os.extsep.join((csvfilename, ext)) if not os.path.splitext(csvfilename)[1].lower().endswith(ext) else csvfilename)
# Open text file for writing
with open(csvfile, 'wb') as f:
w = csv.writer(f)
w.writerow(header) # Write header row
rows = zip(*map(lambda x: x.split(';'), [fcnames, minvalues, avgvalues, maxvalues])) # Transpose the semicolon-delimited values into rows
w.writerows(rows)
return csvfile