# # 练习:
# # 1. 用map函数求:
# # 1**3 + 2**3 + 3 ** 3 + .... 9**3 的和 def add_(x):
return x ** 3 print(sum(map(add_, range(1, 10)))) # # 2. 用map函数求:
# # 1**4 + 2**4 + 3 ** 4 + .... 20**4 的和 def add_(x):
return x ** 4 print(sum(map(add_, range(1, 21)))) # # 练习:
# # 1. 将 1 ~ 20 的偶数用filter生成可迭代对象后将可迭代对象生成的数放入到列表L中 def ous(x):
if x % 2 == 0:
return True L = list(filter(ous, range(1, 20)))
print(L) # # 2. 写一个函数is_prime(x) 判断x是否是素数
# # 用filter函数打印出: 20 ~ 30之间的全部素数 def is_prime(x):
for i in range(2, x):
if x % i == 0:
break
return True for x in filter(is_prime, range(20, 30)):
print(x) # # 练习:
# # names = ['Tom', 'Jerry', 'Spike', 'Tyke']
# # 排序的依据为字符串的反序:
# # 'moT' yrreJ ekipS ekyT
# # 结果:
# # ['Spike', 'Tyke', 'Tom', 'Jerry']
names = ['Tom', 'Jerry', 'Spike', 'Tyke'] def fz_number(x):
return x[::-1] L = sorted(names, key=fz_number)
print(L) # # 练习:
# # 写函数 mysum(n)用递归方式实现求和
# # def mysum(n):
# # # 用递归方式求和
# # ...
# # print(mysum(100)) # 5050 def mysum(x):
if x == 1:
return 1
return x + mysum(x - 1) print(mysum(100)) # # 练习:
# # 1. 已知五位朋友在一起
# # 第五位朋友比第四位朋友大2岁
# # 第四位朋友比第三位朋友大2岁
# # 第三位朋友比第二位朋友大2岁
# # 第二位朋友比第一位朋友大2岁
# # 第一位朋友说它10岁
# # 写程序打印出第五位朋友 和第三位朋友 的年龄 def age_2(x):
if x == 1:
return 10
return 2 + age_2(x - 1) print(age_2(3))
print(age_2(5)) # #   2. 已知有列表:
# # L = [[3, 5, 8], 10, [[13, 14], 15, 18], 20]
# # 1) 写一个函数print_list(lst) 打印出所有元素
# # print(L) # 打印 3 5 8 10 13 14 ....
# L = [[3, 5, 8], 10, [[13, 14], 15, 18], 20] def print_list(lst):
for x in lst:
if type(x) != list:
print(x)
else:
print_list(x) print_list(L) # # 2) 写一个函数sum_list(lst) 返回这个列表中所有元素的和
# # print(sum_list(L)) # 86
# # 注:
# # type(x) 可以返回一个变量的类型
# # 如:
# # >>> type(20) is int # True
# # >>> type([1, 2, 3]) is list # True
L = [[3, 5, 8], 10, [[13, 14], 15, 18], 20] def sum_list(lst):
s = 0
for x in lst:
if type(x) is list:
s += sum_list(x)
else:
s += x
return s print(sum_list(L)) # 练习:
# 1. 输入一个圆的半径,打印出这个圆的面积
# 2. 输入一个圆的面积,打印出这个圆的半径
# (要求用math模块内的函数和数据实现) import math
r = float(input("please inout R:"))
s = math.pi * r ** 2
print("面积是:", s) s = float(input("please inout S:"))
math.sqrt(s / 2)
print(r) # 练习:
# 写一个程序,输入你的出生日期,
# 1) 算出你已经出生多少天?
# # 2) 算出你出生的那天是星期几? import time year = int(input("please input:"))
month = int(input("please input:"))
day = int(input("please input:"))
tuple_birth = (year, month, day, 0, 0, 0, 0, 0, 0)
x = time.mktime(tuple_birth)
t = time.time()
second = t - x
print("您已经出生", second / 60 / 60 // 24, '天')
t = time.localtime(x)
weeks = {
0: "星期一",
1: "星期二",
2: "星期三",
3: "星期四",
4: "星期五",
5: "星期六",
6: "星期日"
} print("您出生的那天是:", weeks[t[6]]) # 练习:
# 1. 请编写函数fun 其功能是计算下列多项式的和:
# fn = 1 + 1/1! + 1/2! + 1/3! + 1/4! + .. + 1/n!
# (建义用数学模块的factorial实现)
# 求当n 等于100时,fn的值
# 看一下fn(100)的值是什么
import math def fun(n):
if n == 0:
return 1
return 1 / math.factorial(n) + fun(n - 1) print(fun(100)) # 2.71828 # 2. 写一个程序,以电子时钟格式:
# HH:MM:SS格式显示时间
# 要求每隔一秒变化一次 # 3 写函数f(n)求下多项式的和
# fn = 1/1 - 1/3 + 1/5 - 1/7 + 1/9 .... 1/(2*n-1)的和
# 求当n取值为1000000时,
# 1) 打印 f(1000000) 的值
# 2) 打印 f(1000000) * 4的值,看看是什么 # 练习:
# 1. 猜数字游戏
# 随机生成一个 0~100之间的一个整数,用变量x绑定
# 让用户输入一个数y,输出猜数字的结果:
# 1) 如果y大于x则提示: "您猜大了"
# 2) 如果y小于x则提示: "您猜小了"
# 3) 如果y等于生成的数x,则提供示用户"恭喜您猜对了 "并退出猜数字
# 循环重复上述步聚,直到猜对为止。
# 猜对了,显示用户猜数字的次数,然后退出程序 # 练习:
# 1. 写一个闹钟程序,启动时设置定时时间,
# 到时间后打印一句"时间到...." 然后退出程序 # 2. 模拟斗地主发牌,扑克牌共54张
# 黑桃('\u2660'), 梅花('\u2663'), 方块('\u2665'), 红桃('\u2666')
# A2-10JQK
# 大王、小王
# 三个人玩,每人发17张牌,底牌留三张
# 输入回车, 打印出第1个人的17张牌
# 输入回车, 打印出第2个人的17张牌
# 输入回车, 打印出第3个人的17张牌
# 输入回车, 打印三张底牌
# 3. 修改学生信息管理程序,将原student_info.py 拆分为模块
# 要求:
# 1. 主事件循环放在main.py中
# 2. show_menu 函数放在menu.py中
# 3. 与学生操作相关的函数放在 student_info.py中
# 练习:
# 写一个函数 get_score() 来获取学生成绩,
# 要求用户输入 1~100的整数,输果输入出现异常,返此函数返回0,
# 否则返回用户输入的成绩
# 示例:
# def get_score():
# ...
# score = get_score()
# print("学生的成绩是:", score) # 练习:
# 写一个函数 get_age()用来获取一个人的年龄信息
# 此函数规定用户只能输入1~140之间的整数,如果用户输入其它的数则直接触发ValueError类型的错误通知
# 如果用户输入的年龄大于140,则触发
# ValueError("年龄超出了正常值")
# 如果用户输入的年龄小于1,则触发
# ValueError("年龄太小...")
# def get_age():
# ...
# try:
# age = get_age()
# print("用户输入的年龄是:", age)
# except ValueError as err:
# print('用户输入的不是1~140的整数,获取年龄失败')
# print("原因是:", err) # 练习:
# 1. 一个球从100米高空落下,每次落地后反弹高度是原高度的一半,再落下,
# 1) 写程序算出皮球在第10次落地后反弹高度是多高?
# 2) 打印出球共经过多少米的路程 # 2. 分解质因数, 输入一个正整数,分解质因数,
# 如:
# 输入: 90
# 则打印:
# '90=2*3*3*5'
# (质因数是指最小能被原数整除的素数(不包括1))
# 练习:
# 有一个集合:
# s = {'唐僧', '悟空', '八戒', '沙僧'}
# 用 for语句来遍历所有元素如下:
# for x in s:
# print(x)
# else:
# print('遍历结束')
# 请将上面的for语句改写为 用while语句和迭代器实现
# 练习:
# 写一个生成器函数 myeven(start, stop)
# 此函数用来生成从 start开始到stop结束(不包含)区间内的一系列偶数
# def myeven(start, stop):
# .... # evens = list(myeven(10, 20))
# print(evens) # [10, 12, 14, 16, 18]
# for x in myeven(21, 30):
# print(x) # 22, 24, 26, 28 # L = [x**2 for x in myeven(3, 10)]
# print(L) # 16 36 64
# 练习:
# 已知有一个列表L
# L = [2, 3, 5, 7]
# 用生成器表达式从此列表中拿到数,生成 列表中数据的平方 # gen = ...... # 此处用生成器表达式实现
# L2 = list(gen) # L2 = [4, 9, 25, 49] # 思考:
# L = [2, 3, 5, 7]
# L2 = [x ** 2 for x in L] # 列表推导式
# it = iter(L2)
# print(next(it)) # 4
# L[1] = 10
# print(next(it)) # 9 # 练习:
# 写一个程序,读入任意行的文字,当输入空行时结束输入
# 打印带有行号的输入结果:
# 如:
# 请输入: hello<回车>
# 请输入: world<回车>
# 请输入: tarena<回车>
# 请输入: <回车> # 直接回车结束输入
# 输出如下:
# 第1行: hello
# 第2行: world
# 第3行: tarena # 练习:
# 写一个程序,从键盘输入一段字符串存入s变量
# 1. 将此字符串转为字节串用变量b绑定,并打印出b
# 2. 打印字符串s的长度和字节串b的长度
# 3. 将b字节串再转换为字符串用变量s2 绑定,判断 s2 和 s是否相同? # 练习:
# 1. 写一个生成器函数primes生成素数,
# 此生成器函数为 primes(begin, end)
# 如: [x for x in primes(10, 20)] 将得到列表
# [11, 13, 17, 19]
# 2. 写一个生成器函数,生成斐波那契数列的前n个数
# 1 1 2 3 5 8 13
# def fibonacci(n):
# ...
# yield...
# 1) 输出前20个数:
# for x in fibonacci(20):
# print(x)
# 2) 打印前40个数的和:
# print(sum(fibonacci(40)))
# 3. 写程序打印杨辉三角(只打印6层)
#
# 1 1
# 1 2 1
# 1 3 3 1
# 1 4 6 4 1
# 1 5 10 10 5 1

Python全栈工程师(exercises)的更多相关文章

  1. Python全栈工程师(装饰器、模块)

    ParisGabriel                每天坚持手写  一天一篇  决定坚持几年 全栈工程师     Python人工智能从入门到精通 装饰器 decorators(专业提高篇) 装饰 ...

  2. Python全栈工程师(递归函数、闭包)

    ParisGabriel            每天坚持手写  一天一篇  决定坚持几年 全栈工程师     Python人工智能从入门到精通 函数式编程: 是指用一系列函数解决问题 每一个函数完成细 ...

  3. 【目录】python全栈工程师

    第一阶段:Python 语言核心编程1. Python核心   -- 2048 游戏核心算法2. 面向对象   -- 天龙八部游戏技能系统3. Python高级   -- 集成操作框架项目:2048游 ...

  4. Python全栈工程师之从网页搭建入门到Flask全栈项目实战(1) - ES6标准入门和Flex布局

    1.简述 1.什么是ES6?ES6, 全称 ECMAScript 6.0,是 JavaScript 的下一个版本标准,2015年6月份发版.ES6的主要目的是为了解决 ES5 的先天不足. 2.了解E ...

  5. Python全栈工程师 (exercises)

    # 1:给定一个数,判断他是正数,负数,还是0 a = int(input("请输入一该个整数")) if a == 0: print(a, "是0") eli ...

  6. Python全栈工程师(Python3 所有基础内容 0-0)

    ParisGabriel              每天坚持手写  一天一篇  决定坚持几年 为了梦想为了信仰    开局一张图     Python一个月的基础语法 基本就到这咯    接下来是数据 ...

  7. Python全栈工程师(包、模块 的导入)

    ParisGabriel                每天坚持手写  一天一篇  决定坚持几年 为了梦想 为了信仰     Python人工智能从入门到精通 $ pip3 install tenso ...

  8. Python全栈工程师(Python3 所有基础内容 0-0)

    转发:https://www.cnblogs.com/ParisGabriel/p/9388030.html statements  语句print   输出quit()  退出exit() 退出ct ...

  9. Python全栈工程师(每周总结:3)

     ParisGabriel                                                           每天坚持 一天一篇 点个订阅吧  灰常感谢    当个死 ...

随机推荐

  1. 关于Ubuntu下安装Win8和Win8下安装Ubuntu的注意事项

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/svitter/article/details/32932387 本文出自:http://blog.c ...

  2. nbu8.1配置群集SQL Server实例的备份

    1.About SQL Server high availability (HA) environments SQL Server Intelligent policies support the f ...

  3. 【转】Android UI开发第三十一篇——Android的Holo Theme

    好长时间没写Android UI方面的文章了,今天就闲扯一下Android的Holo主题.一直做android开发的可能都知道,Android 系统的UI有过两次大的变化,一次是android 3.0 ...

  4. PHP 5.4 on CentOS/RHEL 7.0, 6.5 and 5.10 via Yum

    PHP 5.4.36 has been released on PHP.net on 18th December 2014, and is also available for CentOS/RHEL ...

  5. 我对XCode Objective

    我对XCode Objective-c Cocoa的简单理解 Xcode Xcode说的通俗一点就是开发OS X 和 iOS 应用程序的. 如果我们想要认真点说 ,Xcode 是运行在操作系统Mac ...

  6. alert、confirm、prompt的区别

    我们在开发一些后台管理系统的时候,经常会用到一些弹出框,今天我们一起看一下吧: alert:仅仅是一个提示的作用,通知用户,会阻线程,alert后面的代码,在用户点击确认后仍然会照常执行. confi ...

  7. java基础必备单词讲解 day two

    variable 变量 count 统计 sum 总数 salary 薪水 Scanner 接收 import 导入 eclipse 日食 control 控制 shift 改变 alt 替换键 ha ...

  8. 泉五培训Day1

    T1 树学 题目 [问题描述] 给定一颗 n 个点的树,树边带权,试求一个排列 P,最大化下式 其中,calc(a, b)表示树上由a到b经过的最大边权. [输入格式] 第一行一个整数 n,表示点数下 ...

  9. Codeforces#498F. Xor-Paths(折半搜索)

    time limit per test 3 seconds memory limit per test 256 megabytes input standard input output standa ...

  10. udp发送广播消息

    import socket if __name__ == '__main__': # 创建udpsocket udp_socket = socket.socket(socket.AF_INET, so ...