因為在oj上做程式設計,要求標準輸入,特別是多行輸入。特意查了資料,自己驗證了可行性。
q1:系統如何判斷輸入結束?if __name__ ==
"__main__":
strlist =
for line
in sys.stdin:
#當沒有接受到輸入結束訊號就一直遍歷每一行
tempstr = line.split()
#對字串利用空字元進行切片
strlist.extend(tempstr)
#把每行的字串合成到列表
a:按下換行鍵然後ctrl+d結束。
q2:split()的作用?
a:str.split(str="", num=string.count(str)).
split()通過指定分隔符對字串進行切片,並返回切片結果。
str -- 分隔符,預設為所有的空字元,包括空格、換行(\n)、製表符(\t)等。
num -- 分割次數。
輸出是:list1 = [
1, 2,
3]list2 = [
4, 5,
6]
輸出是:所以看程式的需求選擇。list1 = [
1, 2,
3]list2 = [
4, 5,
6]list1.extend(list2)
一、前言
本文主要使用python 的raw_input() 函式讀入多行不定長的資料,輸入結束的標誌就是不輸入數字情況下直接回車,並填充特定的數作為二維矩陣
二、**
三、執行結果def
get2dlistdata
():
res =
inputline = raw_input()
#以字串的形式讀入一行
#如果不為空字串作後續讀入
while inputline !=
'':
listline = inputline.split(
' ')
#以空格劃分就是序列的形式了
listline = [int(e)
for e
in listline ]
#將序列裡的數由字串變為int型別
inputline = raw_input()
return res
defget2dmatdata
( inlist , val ):
'''
輸入:inlist為不等長的二維陣列,val為需填充的值
輸出:np.array的形式輸出填補完的二維矩陣
'''maxcols =
0#獲得最大長度的子串行
for i
in range( len( inlist ) ):
leni = len( inlist[i] )
if leni > maxcols:
maxcols= leni
#對每個子串行作填充
for i
in range( len( inlist ) ):
num = len( inlist[i] )
while(num <= maxcols):
num +=
1return np.array( inlist , dtype = np.int64 )
if __name__==
'__main__':
indata = get2dimdata()
print indata
'\n'
matarray = get2dmatdata(indata ,
0)print( matarray )
因為在oj上做程式設計,要求標準輸入,特別是多行輸入。特意查了資料,自己驗證了可行性。
q1:系統如何判斷輸入結束?if __name__ ==
"__main__":
strlist =
for line
in sys.stdin:
#當沒有接受到輸入結束訊號就一直遍歷每一行
tempstr = line.split()
#對字串利用空字元進行切片
strlist.extend(tempstr)
#把每行的字串合成到列表
a:按下換行鍵然後ctrl+d結束。
q2:split()的作用?
a:str.split(str="", num=string.count(str)).
split()通過指定分隔符對字串進行切片,並返回切片結果。
str -- 分隔符,預設為所有的空字元,包括空格、換行(\n)、製表符(\t)等。
num -- 分割次數。
輸出是:list1 = [
1, 2,
3]list2 = [
4, 5,
6]
輸出是:所以看程式的需求選擇。list1 = [
1, 2,
3]list2 = [
4, 5,
6]list1.extend(list2)
多行輸入以及結束輸入
一般題中要求輸入多組資料的意思就是讀取數量不定的輸入資料 不能確定輸入資料的數量 在這種情況下,需要不斷讀取資料直至沒有新的輸入為止。include int main return 0 上面是使用c語言的的方法,把輸入語句作為while迴圈的判斷條件,當輸入資料不是檔案結束符 eof 的時候,就可以...
處理多行輸入資料
要求如上圖,如下 include include include 要使用stringstream,必須先加入這一行 using namespace std int main cout sum endl getline使用時可以接受空格並輸出,同時可以指定分隔符 getline ss,temp,參考資...
python 牛客)多行輸入輸出
本文主要對使用牛客做筆試的的輸入輸出的問題做個總結 多行輸入 在第一行標註行數 形如 5 a bn l c oo k m fimport sys s int sys.stdin.readline s int input 二者皆可 ans for i in range s if s l input s...