小白学python之练习记录2
本篇文章包含了python基础的大部分练习,也是我学习python的练习记录,我是小白,所以我更懂得小白该怎么学习,勤加练习是成为大牛的必经之路,希望我的练习能对你学习python有所帮助
"""列表的排序"""
lst = [6,2,7,4,1,3,5]
print(sorted(lst))#sorted 函数按照长短、大小、英文字母的顺序给每个列表中的元素进行排序
print(sorted(lst,reverse=True))#使用默认参数reverse后列表可以按照逆序整理
"""列表解析式和普通写法效率比较"""
import time
a = []
t0 = time.clock()
for i in range(1,20000):
a.append(i)
print(time.clock() - t0, "seconds process time")
t1 = time.clock()
b = [i for i in range(1,20000)]
print(time.clock() - t1, "seconds process time")
"""列表推导式的理解"""
a = [i**2 for i in range(1,10)]
c = [j+1 for j in range(1,10)]
k = [n for n in range(1,10) if n % 2 ==0]
z = [letter.lower() for letter in 'ABCDEFGHIGKLMN']
print(a,c,k,z,sep="\n")#sep="\n"可使输出的结果一次行多行显示
"""字典的推导式必须满足键——值两个条件"""
d = {i:i+1 for i in range(4)}
g = {i:j for i,j in zip(range(1,6),'abcde')}
h = {i:j.upper() for i,j in zip(range(1,6),'abcde')}
print(d,g,h,sep="\n")
""""显示字母的位置,用到python中特有的函数enumerate"""
letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
for num,letter in enumerate(letters):
print(letter,'is',num + 1)
"""面向对象"""
#1
class CocaCola:
formula = ['caffeine','sugar','water','soda']
def __init__(self):
for element in self.formula:
print('Coke has {}!'.format(element))#format在括号内填入
def drink(self, how_much):
if how_much == 'a sip':
print('Cool~')
elif how_much == 'whole bottle':
print('Headache!')
if __name__ == '__main__':
ice_coke = CocaCola()
ice_coke.drink('a sip')
#2
class Project:
def __init__(self,subject):
self.subject=subject
class Teacher:
def __init__(self,name,subject):
self.name=name
self.subject=subject
def Check(self,sub,stu):
print(stu.name,stu.grade,sub.subject)
class Student:
def __init__(self,name,grade):
self.name=name
self.grade=grade
def Write(self):
sub=Project("数学")
t = Teacher("张三", "数学")
t.Check(sub,self)
if __name__ == '__main__':
stu=Student("里斯","四年级")
stu.Write()