for row in reader:
            name = row[0]
            price = Decimal(row[1])
            quantity = int(row[2])
            sale = Sale(name, price, quantity)
            sales.append(sale)
    return sales


def gather_names(sales):
    """
    汇总销售记录中的商品名

    :param sales: 销售记录列表
    :return: 商品名集合
    """
    names = set()
    for sale in sales:
        names.add(sale.name)
    return names


filename = dlg.get_open_file_name("请选择csv文件:", dlg.FileFilter.CSVFiles)
if filename == "":
    print("未选择文件")
    exit(-1)
sales = read_csv(filename)

names = gather_names(sales)
print(names)

def find_max_score(scores):
    """
    寻找并返回scores列表中成绩最高的学生信息

    :param scores: scores列表
    :return: 最高分同学信息
    """
    max_score = scores[0]
    for score in scores:
        if score.score > max_score.score:
            max_score = score
    return max_score


# 读取文件
filename = dlg.get_open_file_name("选择要打开的文件", dlg.FileFilter.CSVFiles)
if filename == '':
    print("未选择文件")
    exit(-1)

scores = read_csv_file(filename)

dlg.show_objects(scores)

max_score = find_max_score(scores)

dlg.show_message(
    f"获得最高分的同学:{max_score.id} {max_score.name},成绩为{max_score.score}")
예제 #3
0
import easygraphics.dialog as dlg

dd = dlg.get_directory_name("Choose a directory")
print(dd)
filename = dlg.get_open_file_name("Choose a file to open", dlg.FileFilter.ImageFiles)
print(filename)
name2 = dlg.get_file_names("Choose files", dlg.FileFilter.ImageFiles)
print(name2)
name2 = dlg.get_save_file_name("Save", dlg.FileFilter.ImageFiles)
print(name2)
예제 #4
0
    return scores


def key_math(score):
    return score.math


def key_literacy(score):
    return score.literacy


def key_english(score):
    return score.english


filename = dlg.get_open_file_name("请选择数据文件", dlg.FileFilter.CSVFiles)
if filename == "":
    print("未选择文件")
    exit(-1)
scores = read_csv(filename)
max_math = max(scores, key=key_math)
max_literacy = max(scores, key=key_literacy)
max_english = max(scores, key=key_english)
print(
    f"数学最高分:id {max_math.id} 姓名 {max_math.name} 班级 {max_math.clazz} 数学 {max_math.math} 语文 {max_math.literacy} 英语 {max_math.english}"
)
print(
    f"语文最高分:id {max_literacy.id} 姓名 {max_literacy.name} 班级 {max_literacy.clazz} 数学 {max_literacy.math} 语文 {max_literacy.literacy} 英语 {max_literacy.english}"
)
print(
    f"英语最高分:id {max_english.id} 姓名 {max_english.name} 班级 {max_english.clazz} 数学 {max_english.math} 语文 {max_english.literacy} 英语 {max_english.english}"
예제 #5
0
'''
Read and parse CSDN password file
Author: Roy
'''
from easygraphics import dialog as dlg

filename = dlg.get_open_file_name("请输入csdn密码文件:")
if filename == "":
    print("未指定文件")
    exit(-1)

class Account:
    def __init__(self,name,password,email):
        self.name = name
        self.password = password
        self.email = email

accounts = []
with open(filename,mode="r",encoding="UTF-8") as file:
    i=0
    file.readline()
    while True:
        try:
            line = file.readline()
            if line == "" :
                break
            row = line.split("#")
            name = row[0].strip()
            password = row[1].strip()
            email = row[2].strip()
            if name.find("roy")!=-1 or email.find("roy")!=-1: