저는 파이썬을 처음 사용합니다. 나는 아래와 같은 목록을 가지고있다.어떻게 값을 목록에 넣을 수 있습니까?
1 [2,3,4] 10
2 [3,4] 20
3 [4] 30
그런 다음 나는 요소의 위의 2 열은 아래 1 열이 될 수 있도록 아래와 같이 2 열에서 총 요소로 나누어 위의 마지막 열 아래 2 열을 계산합니다.
2 10/3
3 10/3
4 10/3
3 20/2
4 20/2
4 30/1
저는 파이썬을 처음 사용합니다. 나는 아래와 같은 목록을 가지고있다.어떻게 값을 목록에 넣을 수 있습니까?
1 [2,3,4] 10
2 [3,4] 20
3 [4] 30
그런 다음 나는 요소의 위의 2 열은 아래 1 열이 될 수 있도록 아래와 같이 2 열에서 총 요소로 나누어 위의 마지막 열 아래 2 열을 계산합니다.
2 10/3
3 10/3
4 10/3
3 20/2
4 20/2
4 30/1
먼저 데이터를 좀 더 사용하기 쉬운 형식으로 다시 포맷해야합니다. 몇 가지 추가 단계가 포함되어 모든 작업 과정을보다 잘 이해할 수 있습니다.
input_list = [] ### initializes the list you'll be using (otherwise you have no list to add to)
row_1 = [1,[2,3,4], 10]
row_2 = [2,[3,4], 20]
row_3 = [3,[4], 30]
input_list.append(row_1)
input_list.append(row_2)
input_list.append(row_3)
이 모든 데이터가과 같이 input_list
에 할당되는 발생합니다, 지금 당신이 찾고있는 답을 얻기 위해서 반복하는 데 사용할 수 있습니다
input_list = [[1,[2,3,4], 10], [2,[3,4], 20], [3,[4], 30]]
. 물론 각 행을 자체 변수로 정의하지 않고 한 번에 모든 데이터를 input_list
으로 정의하여 각 행을 input_list
에 추가 할 수 있습니다. 그러나 가독성과 진행되는 모든 것을 이해하기 위해 위의 단계별 접근법을 사용했습니다. 이제 매개 변수로 input_list
와 함수를 작성하여, 당신은 operation
를 호출, 두 가지 간단한 루프 (다른 내 일) 당신이 필요로 할,
def operation(input):
output = [] ### initializes your final output list variable
for row in input:
for number in row[1]:
column1 = row[0]
column2 = number
column3 = row[2]/len(row[1])
output.append([column1, column2, column3])
return output
그리고 실제로 당신이 필요로하는 출력을 만들 수를 만들 수 있습니다 매개 변수로 input_list
와 기능, output_list
이 무엇이든 operation
함수가 반환합니다 (출력)에 할당됩니다 새로 정의 변수입니다
output_list = operation(input_list)
.
다음 읽을 수있는 형식의 목록을 보려면,뿐만 아니라이 실행
for row in output_list:
print row
이 당신을 위해 무엇을 찾고있는 당신을 제공한다!
데이터가 목록이 아니며, 실제로는 무엇입니까? 두 번째 열에 목록이있는 CSV? –
그것은 CSV가 아닙니다. 나는 어떤 과정을 거쳤으며이 목록을 만들었다. 그리고 지금 나는 아래 목록을 얻을 필요가있다. – Wilson
그것은 [[1, [2, 3, 4], 10]'등입니까? –