일 목록 이해

Mary-Kate Olsen
풀어 주다: 2025-01-01 14:14:10
원래의
784명이 탐색했습니다.

Day-List Comprehension

목록 이해:

한 줄의 코드로 목록을 생성하거나 조작하는 구문론적으로 우아한 방법입니다.

'a' 문자가 포함된 과일을 인쇄하는 프로그램을 작성하세요(for 루프 사용):

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]
newlist = []

for x in fruits:
  if "a" in x:
    newlist.append(x)

print(newlist)

로그인 후 복사
['apple', 'banana', 'mango']

로그인 후 복사

(목록 이해 사용):

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]

newlist = [x for x in fruits if "a" in x]
print(newlist)

로그인 후 복사
['apple', 'banana', 'mango']
로그인 후 복사

주어진 숫자의 제곱근을 구하는 프로그램을 작성하세요.

l = [10,20,30,40]
newlist = []

#using for loop
for num in l:
    newlist.append(num**2)
print(newlist)

#using loop in comprehensive way
newlist = [num**2 for num in l]
print(newlist)
로그인 후 복사
[100, 400, 900, 1600]
[100, 400, 900, 1600]
로그인 후 복사

2개 목록에서 비슷한 번호를 찾고 동일한 2개 목록에서 다른 번호를 찾습니다.

l1 = [10,20,30,40]
l2 = [30,40,50,60]

#for loop
for num in l1:
    for no in l2:
        if num== no:
            print(num,end=' ')
#comprehensive
print([num for num in l1 for no in l2 if num==no])

로그인 후 복사
30 40 
[30, 40]
로그인 후 복사
1 = [10,20,30,40]
l2 = [30,40,50,60]

#comprehensive
output = [num for num in l1 if num not in l2]

output = output + [num for num in l2 if num not in l1]
print(output)

#for loop
for num in l1:
    if num not in l2:
        print(num,end=' ')

for num in l2:
    if num not in l1:
        print(num,end=' ')
로그인 후 복사
[10, 20, 50, 60]
10 20 50 60

로그인 후 복사

포괄적인 접근 방식으로 주어진 출력에 대한 프로그램을 작성합니다.

l1 = [1,2,3]
l2 = [5,6,7]
출력:[(1, 5), (1, 6), (1, 7), (2, 5), (2, 6), (2, 7), (3, 5), (3, 6) , (3, 7)]

l1 = [1,2,3]
l2 = [5,6,7]

l = [(i,j) for i in l1 for j in l2 if i!=j]
print(l)

로그인 후 복사
[(1, 5), (1, 6), (1, 7), (2, 5), (2, 6), (2, 7), (3, 5), (3, 6), (3, 7)]
로그인 후 복사

주어진 출력에 대한 프로그램 작성:
s = "a1b2c3"
출력: abc123

방법:1

s= "a1b2c3"

alpha_list = []
num_list = []

for letter in s:
    if letter.isalpha():
        alpha_list.append(letter)
    else:
        num_list.append(letter)

print("".join(alpha_list+num_list))

로그인 후 복사

방법:2

s = "a1b2c3"
letter=''.join([i for i in s if i.isalpha()])
no=''.join([i for i in s if i.isdigit()])

print(letter+no)
로그인 후 복사
abc123
로그인 후 복사

주어진 출력에 대한 프로그램 작성:

s = "a4k3b2"
출력: aeknbd

s = "a4k3b2"
i = 0 
while i<len(s):
    first = s[i]
    second = int(s[i+1])
    print(first, chr(ord(first)+second),sep='',end='')
    i+=2

로그인 후 복사
aeknbd
로그인 후 복사

작업:

1) 'abbbbklllbcc'를 출력하는 프로그램을 작성하세요

s = "a4k3b2"
i = 0

while i < len(s):
    first = s[i]  
    second =int(s[i + 1]) 
    print(first,chr(ord(first)+1)*second,sep='',end='')
    i+=2

로그인 후 복사
abbbbklllbcc
로그인 후 복사

2) 'aaaaakkkkbbb'를 출력하는 프로그램을 작성하세요

s = "a4k3b2"
i = 0

while i < len(s):
    first = s[i]  
    second =int(s[i + 1]) 
    print(first,chr(ord(first))*second,sep='',end='')
    i+=2
로그인 후 복사
aaaaakkkkbbb

로그인 후 복사

3.포괄적인 for 루프와 일반 for 루프를 사용하여 주어진 행렬을 단일 목록으로 결합합니다.

방법:1(for 루프 사용)

matrix = [[10,20,30], [40,50,60], [70,80,90]]
output=[]

for i in matrix:
    for j in i:
        output.append(j)
print(output)

로그인 후 복사

방법:2(포괄적 for 루프 사용)

matrix = [[10, 20, 30], [40, 50, 60], [70, 80, 90]]

output = [j for i in matrix for j in i]
print(output)

로그인 후 복사
[10, 20, 30, 40, 50, 60, 70, 80, 90]

로그인 후 복사

4.l = ['ABC','DEF', 'GHI', 'JKL']
출력 가져오기: ['ABC', 'def','GHI', 'jkl']

l = ['ABC', 'DEF', 'GHI', 'JKL']

output = [] 
for i, alpha in enumerate(l):
    if i % 2 != 0:
        output.append(alpha.casefold())
    else:
        output.append(alpha)
print(output)
로그인 후 복사
['ABC', 'def', 'GHI', 'jkl']

로그인 후 복사

5.주어진 행렬에 대한 행별 합계를 찾습니다.

matrix = [[10,20,30], 
          [40,50,60], 
          [70,80,90]]
for inner in matrix:
    total = 0
    for index,num in enumerate(inner):
        total+=num
    print(total,end=' ')

로그인 후 복사
60 150 240
로그인 후 복사

위 내용은 일 목록 이해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿