python第二次月考

# 统计英文句子"python is an interpreted language"有多少个单词,有多少个字母 'a'
# count  split
import math


def test1():
    str = 'python is an interpreted language'
    str_list = str.split(" ")
    print(len(str_list))
    print(str.count('a'))

# 使用input 输入一个字符串,遍历每一个字符来判断它是不是全是小写英文字母或者数字
def test02():
    str = input('输入一个字符串:')
    english = 0
    number = 0
    for item in str:
        if 'a' <= item <= 'z': english += 1
        if '0' <= item <= '9': number += 1

    if english == len(str):
        print('全是小写字母')
    elif number == len(str):
        print('全是数字')
    else:
        print("其他")

# 统计一个英文字符串中每个字母出现的次数
def test03():
    str = input('输入一个字符串:')
    str_set = set(str)
    for item in str_set:
        print(f'{item}有{str.count(item)}个')

#将列表中所有内容都变为小写,word_list = ['frdgrfgsdsHHJJ','cdssdfsdfHHHSDFSD']
def test04():
    word_list = ['frdgrfgsdsHHJJ', 'cdssdfsdfHHHSDFSD']
    index = 0
    for item in word_list:
        word_list[index] = item.lower()
        index += 1
    print(word_list)

# 设计一个嵌套结构,使它可以表示一个班级学生的全面信息——包括姓名、年龄、学号班级、所有课的成绩等。
# class1 = [{'name':'','age':'','no':'','class_name':'','corse':{}}]

# 使用循环录入学生姓名保存到列表中,如果录入的学生姓名出现重复,提示是否确认录入,
# 如果是就加入到列表中,如果否则不加入,输入x退出录入并打印录入的学生名单
def test05():
    students = []
    while True:
        name = input('输入学生名字:')
        if name == 'x':
            break
        # 判断是否重复
        if name in students:
            flg = input('是否要录入(y/n):')
            if flg == 'y':
                students.append(name)
        else:
            students.append(name)

    for item in students:
        print(item, end='\t')

# 元素分类,有如下值集合:
# 将所有大于66的值保存至字典的第一个key中,将小于66的值保存至第二个key值中,
# 即:data_dict = {'k1':大于66的所有值,'k2':小于66的所有值}
def test06():
    num_list = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90]
    num1 = [num for num in num_list if num >= 66]
    num2 = [num for num in num_list if num < 66]
    data_dict = {'k1': num1, 'k2': num2}
    print(data_dict)


def test07():
    for i in range(4):
        for j in range(-3, 4):
            if math.fabs(j) >= 3 - i:
                print('*', end=' ')
            else:
                print(' ', end=' ')
        print()

# 22.    现有一份大数据薪水单如下,请计算每一个薪水范围的月平均薪资,每个月按30天计算。
# list_sal = ['12-18K·15薪', '20-30K', '30-50K·15薪', '8-13K', '20-40K·16薪',
# '15-25K·13薪', '15-25K·15薪', '150-250元/天', '13-18K·13薪', '15-25K·13薪',
# '25-40K·15薪', '12-18K', '20-35K·15薪']

list_sal = ['12-18K·15薪', '20-30K', '30-50K·15薪', '8-13K', '20-40K·16薪', '15-25K·13薪', '15-25K·15薪', '150-250元/天', '13-18K·13薪', '15-25K·13薪', '25-40K·15薪', '12-18K', '20-35K·15薪']
for item in list_sal:
    if item.endswith('薪'):
        num = int(item[:-1].split('·')[1]) - 12
        min_sal = int(item[:item.index('K')].split('-')[0])
        max_sal = int(item[:item.index('K')].split('-')[1])
        print(min_sal,max_sal)

    elif item.endswith('天'):
        sal_list = item[:-3].split('-')
        avg_sal = round((int(sal_list[0]) + int(sal_list[1])) / 2, 1) * 30
        # print(avg_sal)
    else:
        sal_list = item[:-1].split('-')
        avg_sal = round((int(sal_list[0]) + int(sal_list[1])) / 2, 1)
        # print(avg_sal*1000)


 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部