亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么它跳過數組輸入的第一行

為什么它跳過數組輸入的第一行

素胚勾勒不出你 2023-03-30 09:44:05
輸入格式第一行包含 N 和 M 的空格分隔值。接下來的行包含列的空格分隔元素。input2 21 23 4代碼import numpymy_array = numpy.array([input().split() for _ in range(int(input().split()[0]))],int)print(my_array.T,my_array.flatten(),sep = "\n")在獲取數組輸入時代碼如何跳過包含行數和列數的第一行“2 2”,我只想了解它如何開始從第二行獲取輸入output[[1 3] [2 4]][1 2 3 4]
查看完整描述

2 回答

?
滄海一幻覺

TA貢獻1824條經驗 獲得超5個贊

此代碼使用列表理解,其中后者的調用input()讀取第一行,因此它從第二行獲取輸入。


此代碼等效于:


import numpy as np


# Read the first line.

num_rows = int(input().split()[0])


# Deal with data.

rows = []

for __ in range(num_rows):

    rows.append(input().split())

my_array = np.array(rows, int)


print(my_array.T, my_array.flatten(), sep='\n')


查看完整回答
反對 回復 2023-03-30
?
萬千封印

TA貢獻1891條經驗 獲得超3個贊

首先,執行并從輸入中讀取for _ in range(int(input().split()[0]))第一行(在您的樣本輸入中)。然后對于從執行的下一行中2 2獲得的范圍將被讀取。range(int(input().split()[0]))在您的示例輸入中,首先for _ in range(int(input().split()[0]))將執行,這實際上是for _ in range(2))然后接下來的行將被讀取input().split()。



查看完整回答
反對 回復 2023-03-30
  • 2 回答
  • 0 關注
  • 132 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號