2018-10-10函数作业

1. 编写一个函数,求1+2+3+...+N

def func1(n):
    sum1 = 0
    for x in range(1, n):
        sum1 += x
    return sum1

num = int(input('请输入N:'))
print(func1(num))

2. 编写一个函数,求多个数中的最大值

def num_max(list1):
    max_num = -100
    for num in list1:
        if num > max_num:
            max_num = num
    return max_num

list1 = []
print("请输入需要比较的数字:")
list1 = map(int, input().split())
print(num_max(list1))

3. 编写一个函数,实现摇骰子的功能,打印n个骰子的点数和

import random

def func_sum(n):
    sum1 = 0
    for x in range(n):
        sum1 += random.randint(1, 6)
    return sum1

num = int(input('请输入N:'))
print(func_sum(num))

4. 编写一个函数,交换指定字典的key和value。

def swap(dictl):
    new_dict = {}
    for key, value in dict1.items():  # dict1.items()这个函数以列表返回可遍历的(键, 值) 元组数组
        new_dict.update({value: key})
    print(new_dict)

dict1 = {'a':1, 'b':2, 'c':3}
# new_dict = {value: key for key, value in dict1.items()}  # 这条语句可以直接代替函数中的那个for循环
swap(dict1)

5. 编写一个函数,提取指定字符串中的所有的字母,然后拼接在一起后打印出来

如:'12a&bc12d--' ---> 打印'abcd'

def change_abc(strs):
    str1 = ''
    for x in strs:
        if (x.isalpha()):
            str1 += x
    return  str1

str1 = str(input("请输入字符串:"))
print(change_abc(str1))

6. 写一个函数,求多个数的平均值

def avege_num(list1):
    sum1 = 0
    ans = 0
    for num in list1:
        ans += 1
        sum1 += num
    return sum1/ans

list1 = []
print("请输入需要计算的数字:")
list1 = map(int, input().split())
print(list1)
print(avege_num(list1))

7. 写一个函数,默认求10的阶层,也可以求其他数的阶层

def jie_chen(n=10):
    ans = 1
    for x in range(1,n+1):
        ans *= x
    return ans

num = int(input("请输入N:"))
print(jie_chen(num))

8. 写一个函数,可以对多个数进行不同的运算

如: operation('+', 1, 2, 3) ---> 求 1+2+3的结果 operation('-', 10, 9) ---> 求 10-9的结果 operation('', 2, 4, 8, 10) ---> 求 24810的结构

def operation(str, *num):
    ans = num[0]
    for x in range(1,len(num)):
        if str == '+':
            ans += num[x]
        if str == '*':
            ans *= num[x]
        if str == '-':
            ans -= num[x]
    return ans
print(operation('*', 6, 6, 3))

9.写一个函数,求指定列表中,指定的元素的个数

def count1(ans,list1):
    count = 0
    for x in list1:
        if ans == x:
            count += 1
    return count
list1 = ['余婷姐姐', "千锋", 666, '余婷姐姐', 23, "千锋", 98, '余婷姐姐', 666, "千锋"]
ans1 = input('请输入你要查询的元素:')
print(count1(ans1, list1))

10.写一个函数,获取指定列表中指定元素对应的下标(如果有多个,一起返回)

def jiao_biao(ans, list1):
    for x in range(len(list1)):
        if ans == list1[x]:
            print(x)

list1 = ['余婷姐姐', "千锋", 666, '余婷姐姐', 23, "千锋", 98, '余婷姐姐', 666, "千锋"]
ans1 = input('请输入你要查询的元素:')
jiao_biao(ans1, list1)
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 8月22日-----字符串相关 2-3 个性化消息: 将用户的姓名存到一个变量中,并向该用户显示一条消息。显示的消...
    future_d180阅读 1,071评论 0赞 1
  • 一位妈妈说,她发现儿子脸红了。 起因是,某天她和孩子一起玩的时候,谈到孩子的过家家游戏,儿子说班上的女生亲了他,说...
    吴在天阅读 1,451评论 11赞 18
  • 有一年到张家界旅行,上亿年的大山就这么沉默不语地站在你面前,你会忽然觉得人类所有的纠缠、痛苦、欢乐,都变得如此渺小...
    想着想着笑出声阅读 584评论 1赞 0
  • 1、“我们对世界长期存在一个误解,以为这个世界是线性的!”樊登说一个人如果没有其它的路,一味“all in”,其实...
    小小小春儿阅读 370评论 0赞 0
  • 不明白为什么这么想哭。 为留不住的她吗? 为回不去的时光吗? 为现今的不快乐吗? 心的一侧,凉凉的。 “就像来不及...
    吹原落阶阅读 272评论 0赞 0

友情链接更多精彩内容