python 小计算

  • 输入:[‘adam’, ‘LISA’, ‘barT’],输出:[‘Adam’, ‘Lisa’, ‘Bart’]。
# -*- coding: UTF-8 -*-
"""
Created on 2017/4/8
@author: cat
利用map()函数,把用户输入的不规范的英文名字,
变为首字母大写,其他小写的规范名字。输入:['adam', 'LISA', 'barT'],输出:['Adam', 'Lisa', 'Bart']。
"""


def change_str(string):
    return string.capitalize()  # 转成首字母大写,其他字母小写的字符串 !


src = ['adam', 'LISA', 'barT']

print map(change_str, src)


def list_capitalize(func, object_set):
    """
    输入:['adam', 'LISA', 'barT'],输出:['Adam', 'Lisa', 'Bart']。
    :param func: 
    :param object_set: 
    :return: 
    """
    return map(func, object_set)


print list_capitalize(change_str, src)

"""
log:
['Adam', 'Lisa', 'Bart']
['Adam', 'Lisa', 'Bart']
"""
  • Python提供的sum()函数可以接受一个list并求和,请编写一个prod()函数,可以接受一个list并利用reduce()求积。
# -*- coding: UTF-8 -*-
"""
Created on 2017/4/8
@author: cat
Python提供的sum()函数可以接受一个list并求和,请编写一个prod()函数,可以接受一个list并利用reduce()求积。
"""


def prod(src_list):
    """
    对序列每个元素求积
    :param src_list: list
    :return: list[0]* list[1]*...*list[n]
    """
    return reduce(lambda x, y: x * y, src_list)


src = [1, 2, 3, 4]
print prod(src)  # 24
  • 请尝试用filter()删除1~100的素数。
# -*- coding: UTF-8 -*-
"""
Created on 2017/4/8
@author: cat
请尝试用filter()删除1~100的素数。
"""


def not_prime(num):
    prime = True
    for i in range(2, num, 1):
        if num % i == 0:
            prime = False
            break
    return not prime


def filter_prime(func, src_list):
    return filter(func, src_list)


print filter_prime(not_prime, range(1, 100, 1))
"""
[4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 22, 24, 25, 26, 27, 28, 30, 32, 33, 34, 35, 36, 38, 39, 40, 42, 44,
 45, 46, 48, 49, 50, 51, 52, 54, 55, 56, 57, 58, 60, 62, 63, 64, 65, 66, 68, 69, 70, 72, 74, 75, 76, 77, 78, 80,
81, 82, 84, 85, 86, 87, 88, 90, 91, 92, 93, 94, 95, 96, 98, 99]

"""
# -*- coding: UTF-8 -*-
"""
Created on 2017/4/8
@author: cat
序列化与反序列化
"""
try:
    import cPickle as pickle
except ImportError:
    import pickle

d = {'name': 'Bob', 'age': 20, 'score': 88}
# 序列化操作
f = open("d.txt", "wb")
pickle.dump(d, f)
f.close()
# 反序列化操作
f = open("d.txt", "rb")
e = pickle.load(f)
f.close()
print e
# {'age': 20, 'score': 88, 'name': 'Bob'}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值