일련의 값에서 난수를 가져 오는 스크립트가 있습니다. 그러나 min()
과 max()
은 사전 순으로 값을 정렬하므로 (200은 10000보다 큰 것으로 간주 됨) 오늘 깨졌습니다. 사전 편집 순서를 어떻게 피할 수 있습니까? Len
키가 올바른 트랙에 있지만 올바르게 맞지 않습니다. 도움이 될만한 다른 키를 찾을 수 없습니다.Python min()으로 숫자 값의 사전 식 정렬을 피하십시오. max()
data_set = 1600.csv, 2405.csv, 6800.csv, 10000.csv, 21005.csv
첫 번째 시도 :
highest_value = os.path.splitext(max(data_set))[0]
lowest_value = os.path.splitext(min(data_set))[0]
반환 : lowest_value = 10000
highest_value = 6800
두 번째 시도 :
highest_value = os.path.splitext(max(data_set,key=len))[0]
lowest_value = os.path.splitext(min(data_set,key=len))[0]
반환 : lowest_value = 1600
highest_value = 10000
감사합니다.
당신은'key = int'을 시도 했습니까? –
'int'와 같이'ValueError'를 올리면 @Paul이됩니다. 물론, 나는 그의 데이터 세트 요소가 문자열이라고 가정하고있다. –
@ChristianDean 내 데이터 세트는 본질적으로 폴더에있는 수치 적으로 명명 된 파일의'dir '이므로,'splitext'는 도움이됩니까? –