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 ...
随机推荐
- emqtt 试用(一)安装和测试
一.安装 http://emqtt.io/docs/v2/getstarted.html http://emqtt.io/docs/v2/advanced.html http://emqtt.io/d ...
- SpringCloud的注解:汇总篇
使用注解之前要开启自动扫描功能,如下配置中base-package为需要扫描的包(含子包): 1 <context:component-scan base-package="cn.te ...
- python爬虫requests 下载图片
import requests # 这是一个图片的url url = 'http://yun.itheima.com/Upload/Images/20170614/594106ee6ace5.jpg' ...
- Extensions in UWP Community Toolkit - ViewExtensions
概述 UWP Community Toolkit Extensions 中有一个为 View 提供的扩展 - View Extensions,本篇我们结合代码详细讲解 View Extensions ...
- uva 11636 Hello World!
https://vjudge.net/problem/UVA-11636 题意: 希望输出n条语句,但是并不会循环,所以只能复制粘贴,一条语句经过复制粘贴后可以变为2条,2条变成4条....每次可以只 ...
- Hibernate(五):Hibernate配置文件及C3P0的用法
配置文件可配项: 参考文档:hibernate-release-5.2.9.Final/documentation/userguide/html_single/Hibernate_User_Guide ...
- python手动设置递归调用深度
python超出递归深度时会出现异常: RuntimeError: maximum recursion depth exceeded python默认的递归深度是很有限的,大概是900当递归深度超过这 ...
- JavaScript 中常见的内存泄露陷阱(摘)
内存泄露是每个开发者最终都不得不面对的问题.即便使用自动内存管理的语言,你还是会碰到一些内存泄漏的情况.内存泄露会导致一系列问题,比如:运行缓慢,崩溃,高延迟,甚至一些与其他应用相关的问题. 什么是内 ...
- 在MySQL中使用子查询
子查询作为数据源 子查询生成的结果集包含行.列数据,因而非常适合将它与表一起包含在from子句的子查询里.例: SELECT d.dept_id, d.name, e_cnt.how_many num ...
- Java基础详解
从写Java系列的第一篇到现在已经三个月了,因为在网络上或书籍中没有见到一些很适合初学者的学习流程,所以下决心自己写一写,也当作回顾一下Java的知识.网上有许多Java教程之类的内容,都是从概念起步 ...