本文以廖雪峰的官方**為參考來學習python的。其學習鏈結為廖雪峰小白學python教程。
本文是學習到python的訪問限制。參考鏈結廖雪峰python訪問限制。
class student(object):
def __init__(self,name,score):
self.__name= name
self.__score = score
def print_score(self):
print('%s: %s' % (self.__name, self.__score))
bart = student('bart simpson',59)
bart.__name
執行結果為 :
traceback (most recent call last):
file "**********", line 11, in
bart.__name
attributeerror: 'student' object has no attribute '__name'
無法訪問例項變數。
如果輸入**
bart.print_score()
則會得到結果:
bart simpson: 59
class student(object):
def __init__(self,name,score):
self.__name= name
self.__score = score
def print_score(self):
print('%s: %s' % (self.__name, self.__score))
def get_name(self):
return self.__name
def get_score(self):
return self.__score
bart.print_score()
print(bart.get_name())
print(bart.get_score())
輸入上面**可以得到:
bart simpson: 59
bart simpson
59現在可以訪問例項變數了。
class student(object):
def __init__(self,name,score):
self.__name= name
self.__score = score
def print_score(self):
print('%s: %s' % (self.__name, self.__score))
def get_name(self):
return self.__name
def get_score(self):
return self.__score
def set_score(self,score):
if 0 <= score <= 100:
self.__score = score
else:
raise valueerror('bad score')
輸入**:
bart.set_score(99)
bart.print_score()
print(bart.get_score())
可以得到:
bart simpson: 99
99
# -*- coding: utf-8 -*-
class student(object):
def __init__(self,name,gender):
self.name = name
self.gender = gender
def get_gender(self):
return self.gender;
def set_gender(self,gender):
self.gender = gender
# 測試:
bart = student('bart', 'male')
print(bart.get_gender)
print(bart.get_gender())
print(type(bart.get_gender()))
print(type('male'))
if bart.get_gender() != 'male':
print('測試失敗!')
print(bart.get_gender())
else:
bart.set_gender('female')
print(bart.get_gender())
if bart.get_gender() != 'female':
print('測試失敗!')
else:
print('測試成功!')
以上為文章結尾測試題目和本人做的答案。
編譯結果為
>
male
female
測試成功!
小白學python之使用 slots
本文以廖雪峰的官方 為參考來學習python的。其學習鏈結為廖雪峰小白學python教程。本文是學習到python的例項屬性和類屬性。參考鏈結廖雪峰python使用 slot 嘗試給例項繫結乙個屬性 class student object pass s student s.name michael...
小白學Python 之函式 二
定義乙個函式 defgetname name print 請叫我 format name return def getitem k b 0 for i in k b b i print b returnb 呼叫getname 小王 k 1,2,34,5,3,56,45,6,56,767,98 get...
小白學Python(一)
小白學python 一 一 注釋 單行注釋 多行注釋 注 在python2中為了支援中文必須寫中文注釋在第一行 coding utf 8 二 定義變數 語法 變數名 變數值 例 a 10 在第一次為變數賦值為定義變數,第一次之後就為修改變數 變數的型別 1 數字 int 整型 long 長整型 fl...