答:python的变量都是指针,python并不会为定义的变量开辟内存空间,而是为值开辟内存空间。因此,a,b=b,a语句中,a指针指向b的值,b指针指向a的值,从而实现了变量值的交换。
答:
a,b = 0, 1
while b<100:
print (b),
a, b = b, a+b
输出:1 1 2 3 5 8 13 21 34 55 89
(1)tuple可以索引吗?
(2)用set去除mylist = [1, 1, 2, 3, 4, 'ok','ok']重复元素。
(3)dict的健值(key)可以重复吗?
答:
list: 链表, 有序的项目, 通过索引进行查找;构建语法mylist=[1,2,3]
tuple: 元组, 元组将多样的对象集合到一起, 不能修改, 通过索引进行查找;构建语法mytuple=1,2,3
dict: 字典, 字典是一组键(key)和值(value)的组合, 通过键(key)进行查找, 没有顺序;构建语法mydict= {1: 1, 2: 2, 3: 3}
set: 集合,无序, 元素只出现一次, 自动去重;构建语法myset = {1,2,3}
(1)可以索引。
(2)list(set(mylist))
(3)不能重复。
labels = {
'phone': 'phone number',
'addr': 'address'
}
name = input('Name: ')
request = input('Phone number (p) or address (a)? ')
if request == 'p': key = 'phone'
if request == 'a': key = 'addr'
if name in people: print ("%s's %s is %s." % \
(name, labels[key], people[name][key]))
答:
people = {
'Alice': {
'phone': '2341',
'addr': 'Foo drive 23'
},
'Beth': {
'phone': '9102',
'addr': 'Bar street 42'
},
'Cecil': {
'phone': '3158',
'addr': 'Baz avenue 90'
}
}
labels = {
'phone': 'phone number',
'addr': 'address'
}
name = input('Name: ')
request = input('Phone number (p) or address (a)? ')
if request == 'p': key = 'phone'
if request == 'a': key = 'addr'
if name in people: print ("%s's %s is %s." % \
(name, labels[key], people[name][key]))
username = input('User name: ')
pin = input('PIN code: ')
if [username, pin] in database:
print ('Access granted')
答:
database = [
['albert','1234'],
['dilbert','4242'],
['smith','7524'],
['jones','9843']]
username = input('User name: ')
pin = input('PIN code: ')
if [username, pin] in database:
print ('Access granted')
答:
mylist=[1,1,3,5,6,6,6]
d={}
for x in mylist:
d[x]=1
mylist =list(d.keys())
class Parent():
x = 1
class Child1(Parent):
pass
class Child2(Parent):
pass
print (Parent.x, Child1.x, Child2.x)
Child1.x = 2
print (Parent.x, Child1.x, Child2.x)
Parent.x = 3
print (Parent.x, Child1.x, Child2.x)
答:
1 1 1
1 2 1
3 2 3
答:
class company(object):
def __init__(self,name,department,position):
self.department = department
self.name=name
self.position=[position]
def setDepartment(self,department):
self.department=department
def addPosition(self,position):
self.position.append(position)
def getPosition(self):
return self.position
hekai = company('He Kai','R&D','engineer')
print(hekai.name,hekai.department,hekai.position)
hekai.setDepartment('human resource')
print(hekai.name,hekai.department,hekai.position)
hekai.addPosition('manager')
print(hekai.name,hekai.department,hekai.position)
print(hekai.getPosition())
print(vars(hekai))
class Doctor:
def __init__(self):
self.role = True
def prescript(self):
if self.role:
print ('prescription:...')
else:
print('no right to prescribe')
def consultant(self):
print('please speak...')
def getposition(self):
return 'resident doctor'
class InternDoctor(Doctor):
def __init__(self):
self.role = False
def getposition(self):
return 'intern doctor'
Yang = Doctor()
print(Yang.getposition())
Mike = InternDoctor()
print(Mike.getposition())
Mike.consultant()
Mike.prescript()
Yang.prescript()
答:
resident doctor
intern doctor
please speak...
no right to prescribe
prescription:...