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

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

Python TypeError:range()整數結尾參數預期錯誤

Python TypeError:range()整數結尾參數預期錯誤

手掌心 2021-03-12 15:11:30
我有以下代碼,并且在某些時候我想初始化具有行和列范圍的對象。當我同時打印它們時,據我所知,每個數字都有一個數字它應該適用于range方法。這是代碼:class Board(object):    def __init__(self, rows, columns):        #small values        if rows < 1 or columns < 2:            SizeOutOfBoundException        #large values        if rows > 20 or columns > 50:            SizeOutOfBoundException        self.rows = rows;        self.columns = columns;         self.arr = [[[0,'H'] for x in range(self.rows)] for y in range(self.columns)] # <- ERROR但這是我不斷得到的錯誤:self.arr = [[[0,'H'] for x in range(self.rows)] for y in range(self.columns)] TypeError: range() integer end argument expected, got Board.我如何操縱它才能工作?為什么這行不通?
查看完整描述

3 回答

?
慕碼人8056858

TA貢獻1803條經驗 獲得超6個贊

這對我有用。您確定問題不在于縮進嗎?您的構造函數未正確縮進。


class Board(object):


    def __init__(self, rows, columns):


        #small values

        if rows < 1 or columns < 2:

            raise SizeOutOfBoundException


        #large values

        if rows > 20 or columns > 50:

            raise SizeOutOfBoundException


        self.rows = rows

        self.columns = columns

        self.arr = [[[0,'H'] for x in range(self.rows)] for y in range(self.columns)]


myboard = Board(3,4)

print myboard.arr

輸出為:


[[[0,'H'],[0,'H'],[0,'H']],[[0,'H'],[0,'H'],[0,'H' ]],[[0,'H'],[0,'H'],[0,'H']],[[0,'H'],[0,'H'],[0,' H']]]


查看完整回答
反對 回復 2021-03-29
?
慕蓋茨4494581

TA貢獻1850條經驗 獲得超11個贊

您很可能Board以行或列而不是整數的形式傳遞對象。


印刷:


self.rows

self.columns

type(self.rows)

type(self.columns)

就在導致錯誤的行之前可以幫助確認這一點,或者您可以張貼正在使用的調用Board(rows,columns)的代碼嗎?


查看完整回答
反對 回復 2021-03-29
?
侃侃爾雅

TA貢獻1801條經驗 獲得超16個贊

您要實例化課程嗎?


b = Board(10, 10)

print b.arr


查看完整回答
反對 回復 2021-03-29
  • 3 回答
  • 0 關注
  • 377 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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