>백엔드 개발 >파이썬 튜토리얼 >Python 목록 튜토리얼 Day2

Python 목록 튜토리얼 Day2

Mary-Kate Olsen
Mary-Kate Olsen원래의
2025-01-11 07:15:43425검색

Python List Tutorial Day2

이 Python 코드는 여러 행렬 및 문자열 조작을 보여줍니다. 각 섹션을 분석해 보겠습니다.

1. 행렬 전치:

이 섹션에서는 주어진 행렬의 전치를 계산합니다. 행렬의 전치는 행과 열을 교환하여 얻습니다. 코드는 행과 열을 반복하여 전치된 행렬을 만듭니다. 그러나 while 루프는 불완전하며 구문 오류(cdefab)가 포함되어 있습니다. 수정되고 더 효율적인 버전은 다음과 같습니다.

<code class="language-python">l = [[10, 12],
     [40, 2],
     [60, 3]]

transpose = [[l[j][i] for j in range(len(l))] for i in range(len(l[0]))]
print(transpose)</code>

간결하고 Python적인 솔루션을 위해 목록 이해를 사용합니다.

2. 문자열 회전:

문자열을 지정된 위치만큼 회전시키는 부분입니다. num % len(word)는 회전이 올바르게 순환되도록 보장하여 양의 회전과 음의 회전을 모두 처리합니다. 코드가 작동합니다.

3. 행렬 행/열 작업:

이 섹션에서는 행렬에 대해 여러 작업을 수행합니다. 즉, 각 행의 요소를 합산하고 각 행의 최대값과 최소값을 찾습니다. 코드는 각 행의 합계를 올바르게 계산합니다. 그러나 최소값을 찾는 코드는 불완전합니다. 수정된 버전은 다음과 같습니다.

<code class="language-python">student_marks = [[10, 20, 30],
                 [40, 50, 60],
                 [70, 80, 90]]

# Row sums
for marks_list in student_marks:
    row_sum = sum(marks_list)  # Use the built-in sum() function
    print(f"Row Sum: {row_sum}")

# Row maximums
for marks_list in student_marks:
    row_max = max(marks_list)  # Use the built-in max() function
    print(f"Row Max: {row_max}")

# Row minimums
for marks_list in student_marks:
    row_min = min(marks_list)  # Use the built-in min() function
    print(f"Row Min: {row_min}")

print("==============================================")
</code>

이 개선된 버전은 더 나은 가독성과 효율성을 위해 Python에 내장된 sum(), max()min() 기능을 활용합니다.

4. 행렬 열 합 및 선행 대각선 합:

이 부분이 빠졌네요. 열과 상승 대각선의 합을 계산하려면 다음 코드를 추가해야 합니다.

<code class="language-python"># Column sums
column_sums = [sum(row[i] for row in student_marks) for i in range(len(student_marks[0]))]
print(f"Column Sums: {column_sums}")

# Leading diagonal sum (assuming a square matrix)
leading_diagonal_sum = sum(student_marks[i][i] for i in range(len(student_marks)))
print(f"Leading Diagonal Sum: {leading_diagonal_sum}")</code>

이 코드는 목록 이해와 선행 대각선 합을 사용하여 열 합계를 효율적으로 계산합니다. 최고 대각선 합은 정사각 행렬(행과 열의 수가 동일한 행렬)에 대해서만 올바르게 작동한다는 점을 기억하세요.

요약하자면 원본 코드에는 일부 오류와 누락이 있습니다. 제공된 수정 사항 및 추가 사항은 의도한 행렬 및 문자열 조작을 보다 완벽하고 효율적으로 구현합니다. 가능할 때마다 내장된 기능을 사용하면 코드 가독성과 성능이 크게 향상됩니다.

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

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