【Python程序设计】实验09(字典) 您所在的位置:网站首页 python输出元音字母 【Python程序设计】实验09(字典)

【Python程序设计】实验09(字典)

2023-12-12 20:10| 来源: 网络整理| 查看: 265

1、【描述】 输入一个简单英文句子,统计并依次输出该句子中元音字母a、e、i、o、u(不区分大小写)出现的次数。 【输入】 一行中输入一个简单英文句子。 【输出】 一行中依次输出a、e、i、o、u在句子中出现的次数,整数以空格间隔。 【输入示例】

If so,you already have a Google Account. You can sign in on the right.

【输出示例】

6 4 4 7 3

【来源】 《Python程序设计基础》第6章编程题3。

line = input() d = {} for ch in line: if ch.isalpha(): if ch.isupper(): ch = ch.lower() if ch in "aeiou": if ch in d: d[ch] += 1 else: d[ch] = 1 letters = sorted(list(d.items())) for letter in letters: print(letter[1], end=' ')

2、【描述】 定义函数:def number_to_words(number),该函数接受一个整数作为参数;返回一个小写英文字符串,字符串的单词描述了该整数。  英文单词:zero、one、two、three、four、five、six、seven、eight、nine。 例如,如果输入的整数是:-4721,函数返回字符串:"negative four seven two one"。 【输入】 输入一个整数。 【输出】 整数的英文单词描述(单词之间以一个空格间隔)。 【输入示例】

-4721

【输出示例】

negative four seven two one

【来源】 《Python程序设计基础》第6章编程题4。

def number_to_words(number): digit_dictionary = {"1" : "one", "2" : "two", "3" : "three", "4" : "four", "5" : "five", "6" : "six", "7" : "seven", "8" : "eight", "9" : "nine", "0" : "zero"} output_string = "" if number < 0: number = -number output_string = "negative " string_input = str(number) splitted = list(string_input) for i in splitted: output_string += digit_dictionary[i] + " " stripped = output_string.rstrip(" ") return stripped def main(): number = int(input()) print(number_to_words(number)) main()

3、【描述】 输入一个1到7的数字,输出对应的星期名的缩写。 1 Mon 2 Tue 3 Wed 4 Thu 5 Fri 6 Sat 7 Sun 【输入】 输入1到7之间数字。 【输出】 输出对应的星期名的缩写。 【输入示例】

1

【输出示例】

Mon

d = {1:"Mon", 2:"Tue", 3:"Wed", 4:"Thu", 5:"Fri", 6:"Sat", 7:"Sun"} x = int(input()) print(d[x])

4、【描述】 定义函数:def formatted_print(dictionary),该函数接受一个字典作为参数,字典的键是学生姓名,字典的值是对应学生的平均分数。函数按照如下所指定的格式打印学生姓名及其对应的平均分数。  例如,如果输入的字典是:{'john':34.480,'eva':88.5, 'alex':90.55, 'tim': 65.900},函数打印出如下信息:

alex 90.55 eva 88.50 tim 65.90 john 34.48

姓名输出宽度10且左对齐;平均分数输出宽度6,保留2位小数,且右对齐。 所有这些信息按照学生的平均分数降序排序输出。 输入数据,调用该函数,输出结果。 【输入】 每一行输入姓名、平均分数,其间以逗号分隔。每行数据构成字典的一个键值对。可能会有多行输入。 【输出】 见【输出示例】。 【输入示例】

john,34.480 eva,88.5 alex,90.55 tim,65.900

【输出示例】

alex 90.55 eva 88.50 tim 65.90 john 34.48 def formatted_print(dictionary): d = {key:value for key, value in dictionary.items()} lst = sorted(d.items(), key=lambda item:item[1], reverse=True) for i in range(len(lst)): print("{0:10s}{1:>6.2f}".format(lst[i][0], lst[i][1])) def main(): d = {} sentinel = '' for line in iter(input, sentinel): line = line.split(',') d[line[0]] = float(line[1]) formatted_print(d) main()

5、【描述】 给定公司n名员工的工龄,要求按工龄增序输出每个工龄段有多少员工。 【输入】 一行中给出n个整数,即每个员工的工龄,范围在[0, 50],整数间以空格间隔。 【输出】 按工龄的递增顺序输出每个工龄的员工个数,格式为:工龄:人数。每项占一行。如果人数为0则不输出该项。 【输入示例】

10 2 0 5 7 2 5 2

【输出示例】

0:1 2:3 5:2 7:1 10:1 lst = [int(x) for x in input().split()] d = {} for x in lst: if x in d: d[x] += 1 else: d[x] = 1 counts = list(sorted(list(d.items()))) for i in range(len(counts)): print(counts[i][0], ':', counts[i][1], sep = '')


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有