【Python】函数的应用

1. 接收两个参数 x 和 y,返回它们的和。

def add2mun(x, y):
    return x + y


add2mun(2, 3)
5

2. 接收一个数字列表 numbers,返回列表中所有数字的平均数。

def avglist(l):
    return sum(l) / len(l)


avglist([1, 2, 3, 4, 5])
3.0

3. 接收一个字符串 string,判断该字符串是否是回文字符串(正反顺序读都是一样的)。

def Palindromic_String(string1):
    if string1 == string1[::-1]:
        return True
    else:
        return False


Palindromic_String("madam")
True

4. 接收一个数字列表 numbers,返回列表中所有数字的积。

def multiplication(numbers):
    result = 1
    for number in numbers:
        result *= number
    return result


multiplication([2, 3, 4, 5])
120

5. 接收一个数字列表 numbers,返回列表中的最大值。

def maxfind(numbers):
    maxNumber = 0
    for i in numbers:
        if i > maxNumber:
            maxNumber = i
    return maxNumber


maxfind([2,4,7,15,12])
15

6. 接收一个整数 n,返回 n 的阶乘。

def factorial(n):
    if n == 0:
        return 1
    else:
        return n * factorial(n - 1)


factorial(5)
120

7. 接收一个整数 n,判断它是否是质数(只能被 1 和自身整除)

def isprime(n):
    if n <= 1:
        return False
    elif n <= 3:
        return True
    elif n % 2 == 0 or n % 3 == 0:
        return False
    i = 5
    while i * i <= n:
        if n % i == 0 or n % (i + 2) == 0:
            return False
        i += 6
    return True


isprime(111)
False

8. 接收一个数字列表 numbers,返回一个去重后的列表。

def Deduplication(numbers):
    resnumbers = list(dict.fromkeys(numbers))
    return resnumbers
    

Deduplication([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

9. 接收两个参数 a和 b,返回 a的 b次方结果。

def power(a, b):
    return a**b


power(2, 0.3)
1.2311444133449163

10. 接收一个整数 number,判断该数字是否为偶数,是则返回 True,否则返回 False。

def even_number(number):
    if number % 2 == 0:
        return True
    else:
        return False


even_number(7)
False

11. 接收一个字符串 sentence,返回该字符串中单词的数量(假设单词之间以空格分隔)。

def count_words(sentence):
    words_list = sentence.split(" ")
    return len(words_list)


count_words("how are you i am fine")
6

12. 接收一个字符串 string,将该字符串的首字母转换为大写并返回结果。

def capitalize_str(mystr):
    return mystr.capitalize()


capitalize_str("hello world")
'Hello world'

13. 接收两个列表 list1 和 list2,返回这两个列表中相同的元素组成的新列表。

def intersect(list1, list2):
    newlist = []
    for i in list1:
        if i in list2 and i not in newlist:
            newlist.append(i)
    return newlist


intersect([1, 2, 3, 4, 5], [2, 3, 4, 5, 6])
[2, 3, 4, 5]

14. 接收一个正整数 n,返回 1! + 2! + … + n! 的结果(阶乘求和)。

def factorialsum(n):
    sum_fac = 0
    fac = 1
    for i in range(1, n + 1):
        fac *= i
        sum_fac += fac
    return sum_fac


factorialsum(5)
153

15. 接收一个字符串 string,返回一个去除字符串中重复字符的新字符串。

def deplica(mystr):
    newstr = ''
    for i in mystr:
        if i not in newstr:
            newstr += i
    return newstr

deplica('hello')
'helo'

16. 判断两个字符串 word1 和 word2 是否由相同的字母组成,顺序可以不同。

def samestring(str1, str2):
    if set(str1) == set(str2):
        return True
    else:
        return False

samestring('abc', 'cba')
True

17. 接收一个字符串列表 words,返回列表中长度最长的单词。

def longest_word(words):
    max_len = 0
    max_word = ''
    for word in words:
        if len(word) > max_len:
            max_len = len(word)
            max_word = word
    return max_word

longest_word(['hello', 'good', 'hi', 'yes', 'no'])


'hello'
def longest_word2(words):
    return max(words, key=len)


longest_word2(['hello', 'hi', 'good', 'hi', 'yes', 'no'])
'hello'

18. 接收可变数量的参数并计算它们的平均值。

def avgall(*args):
    return sum(args) / len(args)

avgall(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
5.5
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值