擅长:python、mysql、java
<p>代码更正:</p>
<pre><code>class Max31865(object):
def __init__(self, name, R_REF, csPin): # missing `:` here
self.name = name
self.R_REF = R_REF
self.csPin = csPin
def read_temp(self):
# code here to check temp
# print the object's attributes or do anything you want
print('Printing in the method: ', self.name, self.R_REF, self.csPin)
probe_list=[["Probe1", 430, 8],["Probe2", 430, 9],["Probe3", 430, 10]]
for probe in probe_list:
# x = str(probe[0]) # probe[0] already is str
x = Max31865(*probe) # Here x is instantiated as `Max31865` object
print('Printing in the loop: ', x.name, x.R_REF, x.csPin)
x.read_temp() # Then call the `read_temp()` method.
# for probe in probe_list:
# readTemp(probe[0])
# This loop is confusing, just as @RafaelC noted in comment,
# 1. `readTemp` is a *method* of `Max31865` object, not a function you can call directly.
# 2. `readTemp` has no argument in it's definition, and you are giving one.
</code></pre>