簡體   English   中英

Python 編程 - “創建 class 函數”中的 Output 問題

[英]Python programming - Output issue in "Create a class function"

我來自非計算機科學背景(生物化學家)。 在“創建 class 函數”下的 Python 編程中,我沒有得到 output 用於以下編寫的 ZC1C41145274C173:

 class circle (object):
      def __init__(self, 10, 'red'):
          self.radius=10;
          self.color='red'

我得到這樣的語法錯誤:

File "<ipython-input-1-ab699251caa9>", line 2
def_init_(self,10,'red'):
                         ^
SyntaxError: invalid syntax

你不能傳遞純值你需要用變量傳遞它

class circle (object):
      def __init__(self,number=10,color='red'):
          self.radius=number
          self.color=color

Function 參數必須是變量,不能是數字或字符串。 改變這個:

 class circle (object):
  def __init__(self, 10, 'red'):
      self.radius = 10
      self.color = 'red'

對此:

 class circle (object):
  def __init__(self, radius, color):
      self.radius = radius
      self.color = color

這個 class 可以被實例化為:

myCircleObject = circle(10, 'red')

或者,如果你想讓關聯參數值更清晰,你可以實例化:

myCircleObject = circle(radius = 10, color = 'red')

您還可以為參數設置默認值:

class circle (object):
  def __init__(self, radius = 10, color = 'red'):
      self.radius = radius
      self.color = color

這樣,您仍然可以像以前一樣實例化 object,但您也可以使用以下命令進行初始化:

myCircleObject = circle()

在這種情況下,半徑和顏色將具有簽名中指定的默認值(半徑為 10,顏色為“紅色”)。

請注意,為避免誤解,具有默認值的參數只能在最右側列出。 所以如果你想只為參數radius指定一個默認值,你需要把它移到右邊:

class circle (object):
  def __init__(self, color, radius = 10):
      self.radius = radius
      self.color = color

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM