내 프로그램을 사용하면 시간을 기록할 수 있으며(목록에 포함됨) 목록의 최고 및 최저 시간은 제외되고 남은 시간의 평균을 계산합니다.
그런 다음 프로그램에 목록의 시간과 평균을 인쇄하도록 지시했습니다. 출력은 다음과 같습니다.
[1.1, 2.1, 3.1, 4.1, 5.1] average:x
평균의 최고 및 최저 시간(제외된 시간)을 괄호로 묶고 싶습니다. []
주변 없이 시간이 표시되면 다음과 같이 표시될 수도 있습니다.
(1.1), 2.1, 3.1, 4.1, (5.1) average:x
나는 이것에 대한 해결책을 찾기 위해 인터넷을 검색했지만 성공하지 못했습니다. 나는 그것이 매우 특정한 문제라고 생각합니다.
가능한지, 가능하다면 방법을 알려줄 수 있는 사람이 있습니까? 가능하면 아주 간단한 설명을 해주시면 감사하겠습니다. 하지만 필요한 경우 상대적으로 발전된 것을 기꺼이 배우겠습니다. (중요한 경우 idk하지만 나는 python 3을 사용하고 있습니다)
Python 3.6 이상을 사용하는 경우 f-string을 사용하여 결과 형식을 지정하려고 합니다.
times = [ 6, 1, 8, 3, 9 ] # create list of times
mean = lambda x: sum(x) / len(x) # define average function
times = sorted(times) # sort our times
first_time = times.pop(0) # pop first time from list
last_time = times.pop() # pop last time from list
times_as_string = ", ".join(str(x) for x in times) # e.g. "3, 6, 8"
# now build and print out the string
print(f"({first_time}) {times_as_string} ({last_time}) average: {mean(times)}")
제공:
(1) 3, 6, 8 (9) average: 5.666666666666667
편집하다:
%
이전 버전을 사용 중인 경우 다음 과 같은 구문 을 사용할 수 있습니다 .
print("(%.2f) %s (%.2f) average: %.3f" % (first_time, times_as_string, last_time, mean(times)))
다음을 줄 것입니다.
(1.00) 3, 6, 8 (9.00) average: 5.667
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다