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学习--课本程序练习(周更)的更多相关文章

  1. python学习笔记4_类和更抽象

    python学习笔记4_类和更抽象 一.对象 class 对象主要有三个特性,继承.封装.多态.python的核心. 1.多态.封装.继承 多态,就算不知道变量所引用的类型,还是可以操作对象,根据类型 ...

  2. Python 学习日记(第二周)

    从这周开始我就正式学习Python 语言了.以后每周都会有一篇有关于学习Python的见闻与大家分享! Python的安装 学习的第一步首先要有一个运行的环境.所以接下来介绍一下安装的步骤. 通过Py ...

  3. Python学习之旅--第一周--初识Python

    一:Python是一种什么样的语言? 1.语言的分类: a.编译型语言和解释性语言: 通常所说的计算机语言分为编译型和解释型语言.编译型语言典型的如C,C++,通常在程序执行之前必须经由编译器编译成机 ...

  4. Python学习之旅--第二周--元组、字符串、运算、字典

    一.元组 另一种有序列表叫元组:tuple.tuple和list非常类似,但是tuple一旦初始化就不能修改,比如同样是列出同学的名字: # Author:Tim Gu tuple = (" ...

  5. Python学习笔记第十一周

    目录: 1.RabbitMQ   2.Redis  内容: 1.RabbitMQ 实现简单的队列通信 send端 import pika credentials = pika.PlainCredent ...

  6. Python学习笔记第十周

    目录: 一.基础概念 1.多进程 2.进程间通信 3.进程锁 4.进程池 5.协程 a) greenlet b) Gevent 6.论事件驱动与异步IO 7.IO多路复用 8.Python Selec ...

  7. Python学习笔记第八周

    目录: 一.基础概念 1.动态导入模块 2.断言机制 3.SocketServer 二.作业 FTP服务器 三.单独注明 1.类中装饰器 2.进度条 一.基础概念 1.动态导入模块 有时在编程过程中, ...

  8. Python学习笔记第六周

    目录 一.基础概念 面向对象编程 1.面向对象的几个核心特点 1.class类 2.object对象 3.encapsulation封装 4.inheritance继承 5.polymorphism多 ...

  9. Python学习笔记第五周

    目录 一.基础概念 1.模块定义 2.包的定义 3.导入包的本质 4.导入模块的本质 5.导入方法 6.import的本质 7.导入优化 8.模块分类 9.标准库介绍 1.time与datetime ...

随机推荐

  1. linux——网络基础

    装完linux系统要对网络(ip地址,子网掩码,网关,DNS)进行配置,才能连接网络 一,开启网卡eth0 CentOS显示没有网卡(eth0) 2.设置静态IP vim /etc/sysconfig ...

  2. Apollo单向SSL认证(1)

    参考链接:https://www.cnblogs.com/benwu/articles/4891758.html keytool -genkey -alias mybroker -keyalg RSA ...

  3. Linux入门:增加用户,并赋予权限

    一.增加用户 1.增加用户,并指定主目录 # useradd –d /usr/sam -m sam此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/us ...

  4. C# bootstrap之表格动态绑定值

    这段时间研究了下bootstrap,打算从表格开始学习,实现动态绑定值,在网上找了挺多例子,但是很少有写全的,要不就太复杂,实现效果后总结一下,直接拷贝过去可以用. 第一步:先去官网上下载bootst ...

  5. mysql(2)—— 由笛卡尔积现象分析数据库表的连接

    首先,先简单解释一下笛卡尔积. 现在,我们有两个集合A和B. A = {0,1}     B = {2,3,4} 集合 A×B 和 B×A的结果集就可以分别表示为以下这种形式: A×B = {(0,2 ...

  6. Java并发编程:synchronized和锁优化

    1. 使用方法 synchronized 是 java 中最常用的保证线程安全的方式,synchronized 的作用主要有三方面: 确保线程互斥的访问代码块,同一时刻只有一个方法可以进入到临界区 保 ...

  7. 这次彻底理解了Object这个属性

    1.实例化Object对象 实例化Object对象的方式有两种:使用Object构造器和使用对象的字面量.例如: var person1 = { name: '李四' }; var person2 = ...

  8. 新手创建Vue项目

    ======================安装vue=============================(参考网址:http://www.bubuko.com/infodetail-21320 ...

  9. html标记语言 --文本标记

    html标记语言 --文本标记 二.文本标记 1.h1-h6 标题标记,h1最大 2.font 字体设置标记 2.1 size字体大小.<font size="> 取值范围1-7 ...

  10. Oracle中如何导出存储过程、函数、包和触发器的定义语句?如何导出表的结构?如何导出索引的创建语句?

    Oracle中如何导出存储过程.函数.包和触发器的定义语句?如何导出表的结构?如何导出索引的创建语句? QQ群里有人问:如何导出一个用户下的存储过程?   麦苗答:方法有多种,可以使用DBMS_MET ...