实验楼 部分挑战

版权声明:欢迎去我的新家https://www.jianshu.com/u/906a78709f1d https://blog.csdn.net/dongyanwen6036/article/details/82056620

######实验楼 挑战:类和Collection模块
地址

code:

# -*- coding:utf-8 -*-  
import sys
from collections import  Counter
class Person(object):
    """
    返回具有给定名称的 Person 对象
    """

    def __init__(self, grade):
        self.grade = grade

    def get_grade(self):
        return self.grade


class Student(Person):
   
    def __init__(self, grade):
        Person.__init__(self, grade)


    def get_grade(self):
       
        s=Counter(self.grade)
        return "Pass: {}, Fail: {}".format(s['A']+s['B']+s['C'],s['D'])


class Teacher(Person):
   
    def __init__(self, grade):
        Person.__init__(self, grade)
        
    def get_grade(self):
        s=Counter(self.grade).most_common()
        l=["{}: {}".format(i,j) for i,j in s]#列表推导式
        return ', '.join(l)#注意是逗号和空格

if __name__=='__main__':
    if len(sys.argv)!=3:
        print("Wrong paraterm")
        sys.exit(-1)
    elif (sys.argv[1]=='student'):
        std=Student(sys.argv[2])
        print(std.get_grade())
    elif (sys.argv[1]=='teacher'):
        tea=Teacher(sys.argv[2])
        print(tea.get_grade())
    else:
        sys.exit(0)


这里写图片描述


######实验楼 挑战:历史命令
地址

cat data1 | cut -c 8- |sort |uniq -dc |sort -k 1 -n -r | head -3  > /home/shiyanlou/result

output:

output


######实验楼 挑战:数据提取
地址
2016年tapfun校招面试题

grep '^[[:digit:]]' data2 > /home/shiyanlou/num

grep '.*@.*.com' data2 > /home/shiyanlou/mail 

猜你喜欢

转载自blog.csdn.net/dongyanwen6036/article/details/82056620