Python学习--课本程序练习(周更)
1.绘制正方形螺旋线
import turtle
turtle.setup(600,300,200,200)
turtle.pensize(1)
turtle.color('green')
i=0
while i<160:
turtle.seth(90)
turtle.fd(i+1)
turtle.seth(180)
turtle.fd(i+2)
turtle.seth(-90)
turtle.fd(i+3)
turtle.seth(0)
turtle.fd(i+4)
i=i+4
turtle.seth(90)
turtle.fd(161)
turtle.seth(180)
turtle.fd(162)
turtle.seth(-90)
turtle.fd(163)
2.绘制无角正方形
import turtle
def drawtriangle(angle):
turtle.seth(angle)
turtle.penup()
turtle.fd(20)
turtle.down()
turtle.fd(80)
turtle.penup()
turtle.fd(20)
turtle.down() turtle.setup(800,350) turtle.pensize(1)
turtle.pencolor("black")
for i in (0,90,180):
drawtriangle(i)
turtle.seth(-90)
turtle.penup()
turtle.fd(20)
turtle.down()
turtle.fd(80)
3.每周工作五天,休息2天,休息日水平下降0.01,工作日要努力到什么程度,一年后的水平才和每天努力1%取得的效果一样。
#函数编程的思想
#DayDayup
import math
def dayUp(df):
dayup=1.0
for i in range(365):
if i%7 in[6,0]:
dayup=dayup*(1-0.01)
else:
dayup=dayup*(1+df)
return dayup dayfactor=0.01
while(dayUp(dayfactor)<37.78):
dayfactor+=0.001 print("dayfactoris:{:.3f}.".format(dayfactor))
4.绘制进度条
1.多行累积不刷新(time.sleep延时输出)
#Textprogress bar
import time
print("-----执行开始-----")
scale=10
for i in range(scale+1):
c=(i/scale)*100
a,b="**"*i,".."*(scale-i)
print("%{:^3.0f}[{}>-{}]".format(c,a,b))
time.sleep(0.1)
print("-----执行开始-----")
2.单行刷新 print函数中添加参数end=''不换行 头部加入转义字符‘\r’把输出指针移到行首部 注:IDLE屏蔽单行刷新功能,需运行.py程序
#Textprogress bar
import time
print("-----执行开始-----")
scale=10
for i in range(scale+1):
c=(i/scale)*100
a,b="**"*i,".."*(scale-i)
print("\r%{:^3.0f}[{}>-{}]".format(c,a,b),end='')
time.sleep(0.1)
print("-----执行结束-----")
3.以上基础上增加运行的时间监控 time.clock()函数 第一次调用计时开始,第二次及后续调用返回与第一次记时的时间差
#Textprogress bar
import time
print("-----执行开始-----")
scale=10
t=time.clock()
for i in range(scale+1):
c=(i/scale)*100
t-=time.clock()
a,b="**"*i,".."*(scale-i)
print("\r%{:^3.0f}[{}>-{}]{:.2f}s".format(c,a,b,-t),end='')
time.sleep(1)
print("-----执行结束-----")
4.判断数字是否是回文数
a=eval(input("Enter a unmber:"))
b=a
t=0
while a!=0:
t=t*10+a%10
a=a//10
if b==t:
print("true")
else:
print("no")
Python学习--课本程序练习(周更)的更多相关文章
- python学习笔记4_类和更抽象
python学习笔记4_类和更抽象 一.对象 class 对象主要有三个特性,继承.封装.多态.python的核心. 1.多态.封装.继承 多态,就算不知道变量所引用的类型,还是可以操作对象,根据类型 ...
- Python 学习日记(第二周)
从这周开始我就正式学习Python 语言了.以后每周都会有一篇有关于学习Python的见闻与大家分享! Python的安装 学习的第一步首先要有一个运行的环境.所以接下来介绍一下安装的步骤. 通过Py ...
- Python学习之旅--第一周--初识Python
一:Python是一种什么样的语言? 1.语言的分类: a.编译型语言和解释性语言: 通常所说的计算机语言分为编译型和解释型语言.编译型语言典型的如C,C++,通常在程序执行之前必须经由编译器编译成机 ...
- Python学习之旅--第二周--元组、字符串、运算、字典
一.元组 另一种有序列表叫元组:tuple.tuple和list非常类似,但是tuple一旦初始化就不能修改,比如同样是列出同学的名字: # Author:Tim Gu tuple = (" ...
- Python学习笔记第十一周
目录: 1.RabbitMQ 2.Redis 内容: 1.RabbitMQ 实现简单的队列通信 send端 import pika credentials = pika.PlainCredent ...
- Python学习笔记第十周
目录: 一.基础概念 1.多进程 2.进程间通信 3.进程锁 4.进程池 5.协程 a) greenlet b) Gevent 6.论事件驱动与异步IO 7.IO多路复用 8.Python Selec ...
- Python学习笔记第八周
目录: 一.基础概念 1.动态导入模块 2.断言机制 3.SocketServer 二.作业 FTP服务器 三.单独注明 1.类中装饰器 2.进度条 一.基础概念 1.动态导入模块 有时在编程过程中, ...
- Python学习笔记第六周
目录 一.基础概念 面向对象编程 1.面向对象的几个核心特点 1.class类 2.object对象 3.encapsulation封装 4.inheritance继承 5.polymorphism多 ...
- Python学习笔记第五周
目录 一.基础概念 1.模块定义 2.包的定义 3.导入包的本质 4.导入模块的本质 5.导入方法 6.import的本质 7.导入优化 8.模块分类 9.标准库介绍 1.time与datetime ...
随机推荐
- Python内置函数(59)——open
英文文档: open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, ope ...
- emqtt 试用(七)追踪
追踪 EMQ 消息服务器支持追踪来自某个客户端(Client)的全部报文,或者发布到某个主题(Topic)的全部消息. 追踪客户端(Client): ./bin/emqttd_ctl trace cl ...
- Spring Security入门(2-2)Spring Security 的运行原理 2
- 利用JavaScript去掉数组中重复项
利用JavaScript的object的特性,我们可以非常容易的实现将一个数组的重复项去掉. object的特性是:key一定是唯一的. 把数组重复项去掉: 1 将数组转换成一个object对象,数组 ...
- Mysql中autocommit的用法
定义 Mysql文档原文:SET autocommit disables or enables the default autocommit mode for the current session. ...
- WebApi 基于token的多平台身份认证架构设计
1 概述 在存在账号体系的信息系统中,对身份的鉴定是非常重要的事情. 随着移动互联网时代到来,客户端的类型越来越多, 逐渐出现了 一个服务器,N个客户端的格局 . 不同的客户端产生了不同的用户使用 ...
- SpringMVC(十二):SpringMVC 处理输出模型数据之@ModelAttribute
Spring MVC提供了以下几种途径输出模型数据:1)ModelAndView:处理方法返回值类型为ModelAndView时,方法体即可通过该对象添加模型数据:2)Map及Model:处理方法入参 ...
- 控件篇:CheckedListBox的全选与反选
private void cbXmlAll_CheckedChanged(object sender, EventArgs e) { for (int i = 0; i < cblXmlList ...
- 用js来实现那些数据结构05(栈02-栈的应用)
上一篇文章我们一起实现了栈,那么这一篇文章我们一起来用栈解决问题.看看如何用栈来解决进制转换,平衡圆括号以及汉诺塔问题,使我们对栈有更为深入的理解. 1.进制转换 我们先来看看十进制如何转换成二进制, ...
- 字段从varchar2修改为number,字段中的内容做修改,替换
#测试表的内容结构:如下所示: 其中DATEHH字段:代表时间,字段在表中是varchar2格式 现有如下需求:字段类型,从varchar2改变为number, 字段中 '.'去除, 2013103少 ...