還沒加上try 跟 except
temp1=str.split(input())
count, =temp1[0:1:]
count=int(count)
for c in range(1, 4*count+1, 4):
a,b,c,d=temp1[c:c+4:1]
a,b,c,d=(int(a),int(b),int(c),int(d))
if b-a==c-b==d-c:
D=b-a
e=int(d+D)
print(a,b,c,d,e)
elif b/a==c/b==d/c:
R=b/a
e=int(d*R)
print(a,b,c,d,e)
else:
continue
在spyder測試都是對的
但打上來測資一直顯示
(expected 4, got 0)
想問一下哪裡出錯了!
在spyder測試都是對的
但打上來測資一直顯示
(expected 4, got 0)
想問一下哪裡出錯了!
我是python初學者, 所以看不懂您方括號裡面加冒號的用法,
不過我是這樣解的:
1. 題目第一個數字代表列表數, 所以先讀入, 以決定後續迴圈次數
2. 設定 while 迴圈,圈數小於剛剛讀入的數字,並執行以下動作:
3. 將讀取的數列存在陣列,用 split(" ")分割讀入的數列
4. 每個元素轉成 int 才能做運算
5. if 判斷式,看是等差或等比數列
6. 把算出來的第五項 append 上去原本陣列
7. for 迴圈印出陣列元素,注意格式(空格和換行)
大概長這樣:
input()
while x < i
(轉換int)
if(等差)
算結果並append上去
for迴圈打印
if(等比)
算結果並append上去
for迴圈打印
else:
(丟出例外)
另外請問 方括號裡面加冒號 是lambda用法嗎? 還是其他?