小编May*_*ain的帖子

类变量和实例变量之间的区别

我已经在Stack Exchange上阅读了很多像Python一样的答案- 为什么在课堂上使用"self"? 阅读完这些内容之后,我了解到实例变量对于类的每个实例都是唯一的,而类变量是在所有实例之间共享的.在玩的时候我发现这个代码 -

class A:
    x = []
    def add(self):
        self.x.append(1)

x = A()
y = A()
x.add()
print "Y's x:",y.x
Run Code Online (Sandbox Code Playgroud)

确实给出了输出[1].但是,这段代码 -

class A:
    x = 10
    def add(self):
        self.x += 1

x = A()
y = A()
x.add()

print "Y's x:",y.x
Run Code Online (Sandbox Code Playgroud)

给出输出,就像10我认为的那样11.如果这是一个非常无聊的问题,请原谅我,但我在编程方面不是很有经验.

python oop class

4
推荐指数
1
解决办法
2454
查看次数

file.readlines()留下空白行

我已经阅读了file.readlines逐行读取整个文件并将其存储在列表中.如果我有这样的文件 -

Sentence 1
Sentence 2
Sentence 3
Run Code Online (Sandbox Code Playgroud)

我用它readlines来打印每个句子 -

file = open("test.txt") 
for i in file.readlines():
    print i
Run Code Online (Sandbox Code Playgroud)

输出是

Sentence 1

Sentence 2

Sentence 3
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么我在每个句子之间得到额外的界限,我怎么能摆脱它呢?如果这个问题非常愚蠢,请原谅我,但我对Python不是很有经验.

UPDATE

我发现使用i.strip也删除了多余的线,为什么会发生这种情况?据我所知,split删除字符串末尾和字符串开头的空格.

python string file-io

4
推荐指数
1
解决办法
9320
查看次数

标签 统计

python ×2

class ×1

file-io ×1

oop ×1

string ×1