>  기사  >  백엔드 개발  >  Python의 목록 구현 방법 소개 및 목록과 배열 간의 상호 변환

Python의 목록 구현 방법 소개 및 목록과 배열 간의 상호 변환

黄舟
黄舟원래의
2017-09-23 11:19:392196검색

이 글에서는 주로 Python의 목록과 목록과 배열의 상호 변환 방법을 소개합니다. Python에서 목록의 기능과 사용법을 간략하게 분석하고 목록과 배열의 상호 변환 기술이 필요한 친구는 이 예제를 참조할 수 있습니다. 기사

Python에서 목록과 목록과 배열 간의 상호 변환을 구현하는 방법을 설명합니다. 참조를 위해 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

Python의 목록은 순서가 지정된 컬렉션이며 언제든지 요소를 추가하거나 삭제할 수 있습니다.


# -*- coding: utf-8 -*-
frameID = 1
frameID_list = []
frameID_list.append(frameID)
print (frameID_list)
frameID = 2
frameID_list.append(frameID)
print (frameID_list)
name = 'SRX'
frameID_list.append(name)
print (frameID_list)
print (len(frameID_list))  #打印长度
print (frameID_list[2])  #使用[]进行索引
print (frameID_list[-1])
frameID_list.insert(1, 'WJC')  #在指定位置插入元素
print (frameID_list)
frameID_list.pop()  #将最后一位的元素删除
print (frameID_list)
frameID_list.pop(0)  #删除指定位置的元素
print (frameID_list)

목록 간의 상호 변환에 대해 이야기해 보겠습니다. 그리고 numpy로 배열하세요.

우선 아래와 같이 목록에 있는 요소의 속성이 일치해야 합니다. 배열의 각 요소에 대해 수학적 연산이 수행되므로 연산 후 결과가 float이므로 마지막으로 np 배열이 다시 변환됩니다. 전체 작업은 목록(str 유형의 요소 포함)의 각 요소에 대해 수학 연산을 수행한 다음 다시 목록으로 변환하는 프로세스와 동일합니다.


frame_ID_list_np = np.array(frame_ID_list, dtype = int)
frame_ID_list_np = np.array(frame_ID_list_np / 1000 * fps, dtype = int)
frame_ID_list = frame_ID_list_np.tolist()

또 주의가 필요한 것이 있는데, 유형 변환 후 두 변수가 동일한지 판단할 때입니다. 예를 들면 다음과 같습니다.


frame_ID = '1000'
ID_count = 1000
frame_ID = '1000'
ID_count = 1000
if frame_ID == ID_count:
  ...

이때 if는 성립하지 않습니다. , 그래서 직접 작성해 보면 에러가 나오기는 쉽지만, 다른 변수에서 Frame_ID 와 ID_count 를 구하면 둘의 타입이 그리 명확하지 않으니 프로그래밍할 때 이런 세세한 부분에 주의하셔야 합니다

;

Similar 파일을 저장할 때:


str_name_FID = str(frame_ID_list_np_save[count_save_frame_np])
cv2.imwrite('image/' + video_name_save + '_' + str_name_FID + '.jpg',frame) #save the image
count_save_frame_np = count_save_frame_np + 1

사진을 저장할 때 사진의 이름은 str 유형으로 연결되어야 합니다. count_save_frame_np는 프로그램에서 이 변수를 직접 사용하는 경우입니다. 이미지 이름은 파일이 저장되지 않으므로 첫 번째 줄의 강제 변환이 필요합니다. 먼저 str 유형으로 변환한 후 사용하세요.

위 내용은 Python의 목록 구현 방법 소개 및 목록과 배열 간의 상호 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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