>  기사  >  백엔드 개발  >  파이썬에서 배열을 정의하는 방법

파이썬에서 배열을 정의하는 방법

coldplay.xixi
coldplay.xixi원래의
2021-03-05 16:37:5882913검색

Python에서 배열을 정의하는 방법: 1. [a=[[1,1],[1,1]]]를 직접 정의합니다. 2. [a=[[0 for x in range(10)]를 간접적으로 정의합니다. y in range(10)]]; 3. [b = [[0]*10]*10] 초기 0의 2차원 배열입니다.

파이썬에서 배열을 정의하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, Python 버전 3.9, DELL G3 컴퓨터.

Python이 배열을 정의하는 방법:

Python에는 배열에 대한 데이터 구조가 없지만 목록은 다음과 같이 배열과 매우 유사합니다.

a=[0,1,2], then a[ 0]=0 , a[1]=1, a[[2]=2, 그러나 이것은 질문을 제기합니다. 즉, 배열 a가 0에서 999까지 정의되기를 원한다면 이것은 a =를 통해 달성될 수 있습니다. 범위(0, 1000). 또는 a = range(1000)로 생략하고 길이가 1000인 a를 정의하고 초기 값이 모두 0이면 a = [0 for x in range(0, 1000)]

다음과 같습니다. 2차원 배열의 정의는 다음과 같습니다.

2*2 2차원 배열을 정의하는 a=[[1,1],[1,1]]을 직접 정의합니다. 초기값은 0입니다. a=[[1,1],[1,1]],这里定义了一个2*2的,且初始为0的二维数组。

间接定义 a=[[0 for x in range(10)] for y in range(10)],这里定义了10*10初始为0的二维数组。

还有更简单的字义二维数组的方法:

b = [[0]*10]*10

간접 정의 a=[[0 for x in range(10)] for y in range(10)], 여기서는 초기 값이 0인 10*10 2차원 배열을 정의합니다.

리터럴 2차원 배열의 더 간단한 방법도 있습니다:

  • b = [[0]*10]*10, 이는 10*10을 2차원 배열로 정의합니다. 초기값은 0입니다.

    a=[[0 for x in range(10)] for y in range(10)]와 비교: print a==b의 결과는 True입니다.
  • 그러나 a 대신 b의 정의 방법을 사용한 후, 정상적으로 실행될 수 있었던 이전 프로그램도 잘못되었습니다. 주의 깊게 분석한 결과 차이점이 발견되었습니다.

a[0][0]=1이면 거기에 있습니다. a[0] [0]만 1이고 나머지는 모두 0입니다.

b[0][0]=1, a[0][0], a[1][0], a[9,0]까지는 모두 1입니다.

이로부터 우리는 큰 배열에 있는 10개의 작은 1차원 데이터가 모두 동일한 참조를 가지고 있다는 것을 알게 됩니다. 즉, 그들은 동일한 주소를 가리킵니다.

그래서 b = [[0]*10]*10은 기존의 2차원 배열을 따르지 않습니다. 🎜🎜🎜관련 무료 학습 권장사항: 🎜python 비디오 튜토리얼🎜🎜🎜

위 내용은 파이썬에서 배열을 정의하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.