为什么python 2和python 3中的代码输出是不同的?
class A:
def m(self):
print("m of A called")
class B(A):
pass
class C(A):
def m(self):
print("m of C called")
class D(B,C):
pass
x = D()
x.m()
实际产出:
$ python diamond1.py //python 2 used for the code
m of A call
我下载了一个程序在笔记本电脑上进行测试,笔记本上只有python2.4.4,它不断告诉我class main():括号上的语法错误--我对类没有经验,所以我正在寻找一个快速解决这个问题的方法。python 2中的类有何不同?
class main():
def __init__(self):
response=self.valid_input("New game or Load game?",["load","new"])
if response == "load":
语法总是在(部件上。
我有以下代码:
>>> class MyClass:
pass
>>> myObj=MyClass()
>>> type(myObj)
<type 'instance'> <==== Why it is not type MyClass ?
>>> type(MyClass)
<type 'classobj'> <=== Why it is not just 'MyClass'?
>>> isin
我现在正在上Python的课程,我的导师说的话把我搞糊涂了。这是我们编写的代码。
import re
message = "Call me at 415-555-1011 tommorow or at"\
" 415-555-9999 for my office line"
phoneNumRegX = re.compile(r"\d\d\d-\d\d\d-\d\d\d\d")
mo = phoneNumRegX.findall(message)
他说,当我们将phoneNumRegX赋值给re.compile(r"\d\d
class A:
def start(self):
pass
class B(A):
def start(self):
super(A,self).start()
b = B()
b.start()
出现此错误:
Traceback (most recent call last):
File "C:/Python32/a.py", line 10, in <module>
b.start()
File "C:/Python32/a.py", line 7, in start
我想让Python的装饰师为我工作。我很难理解为什么这不管用:
class toy(object):
@property
def toyname(self):
return 'lol'
a = toy
print(a.toyname)
当我运行它时,我得到以下输出:
<property object at 0x03362FC0>
该财产,似乎,没有得到评估。
我已经看到了Python2.x的几个答案,提到我需要子类object才能使属性工作;但是,到目前为止我遇到的答案并不能解决我的问题。
我已经安装了Python2.6和新版本的py2exe。
hello.py
print "Hello from py2exe"
setup.py
from distutils.core import setup
import py2exe
setup(
# The first three parameters are not required, if at least a
# 'version' is given, then a versioninfo resource is built from
# them and added to
我是一个完整的Python新手,所以我的问题似乎很愚蠢。我看到了在Python中为对象属性赋值的两种方法:
使用__dict__
class A(object):
def __init__(self,a,b):
self.__dict__['a'] = a
self.__dict__['b'] = b
无__dict__
class A(object):
def __init__(self,a,b):
self.a = a
self.b = b
有谁能解释一下有什么区别吗?