​大家好,今天是21天python打卡的第15天,接下来的一段时间,我们通过学习python经典案例,来巩固最近一段时间学习的知识。


活动地址:CSDN21天学习挑战赛

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。


目录

Hello程序

代码实现:

圆面积的计算

代码实现:

简单的人名对话

代码实现:

斐波那契数列的计算

代码实现:

同切圆的绘制

代码实现:

日期和时间的输出

代码实现:

字符串拼接

代码实现:

整数序列求和

代码实现:

九九乘法表输出

代码实现:

运行结果

阶乘求和

代码实现:

猴子吃桃问题

代码实现:

健康食谱输出

代码实现:

五角星绘制

代码实现:

运行结果

太阳花绘制

代码实现:

运行结果


  • Hello程序

这个是最基础的程序,也是所有编程语言的经典案例,输出Hello World。这里我就不解释了。

代码实现:

print("Hello World")
  • 圆面积的计算

我们知道圆的面积怎么算,S=3.14*R*R,所以我们只要定义一个R,在做一个赋值语句就可以实现。

代码实现:

radius = 25 # 圆的半径是25
area = 3.14 * radius * radius # 输入计算圆面积的公式
print(area)
print("{:.2f}".format(area)) # 只输出两位小数
  • 简单的人名对话

这个只要是练习输入输出语句,我就不做过多赘述。

代码实现:

name = input("输入姓名:")
print("%s 同学,学好Python,前途无量!"%name)
print("%s 大侠,学好Python,大展拳脚!"%name[0])
print("%s 哥哥,学好Python,人见人爱!"%name[1:])
  • 斐波那契数列的计算

首先,我们要了解什么是斐波那契数列。

what?

斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardo Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(≥ 2,∈ N*)

代码实现:

a, b = 0, 1
while a < 1000: # 输出不大于1000 的序列print(a, end=',')a, b = b, a + b
  • 同切圆的绘制

这里我们要用到turtle库。

what?

turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

我们简单拓展turtle的用法。

画布

画布就是turtle展开用于绘图区域,可以设置它的大小和初始位置。

设置画布大小

turtle.screensize(canvwidth=None,canvheight=None,bg=None),参数分别为画布的宽(单位像素),高,背景颜色。

如:turtle.screensize(800,600,"green")

turtle.screensize()#返回默认大小(400,300)

turtle.setup(width=0.5,height=0.75,startx=None,starty=None),参数:width,height:输入宽和高为整数时,表示像素;为小数时,表示占据电脑屏幕的比例,(startx,starty):这一坐标表示矩形窗口左上角顶点的位置,如果为空,则窗口位于屏幕中心。

如:turtle.setup(width=0.6,height=0.6)

turtle.setup(width=800,height=800,startx=100,starty=100)

画笔

在画布上,默认有一个坐标原点为画布中心的坐标轴,坐标原点上有一只面朝x轴正方向小乌龟。这里我们描述小乌龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向),turtle绘图中,就是使用位置方向描述小乌龟(画笔)的状态。

画笔的属性

画笔(画笔的属性,颜色、画线的宽度等)

1)turtle.pensize():设置画笔的宽度;

2)turtle.pencolor():没有参数传入,返回当前画笔颜色,传入参数设置画笔颜色,可以是字符串如"green","red",也可以是RGB3元组。

3)turtle.speed(speed):设置画笔移动速度,画笔绘制的速度范围[0,10]整数,数字越大越快。

代码实现:


import turtle # 引用turtle 库
turtle.pensize(2) # 设置画笔宽度为2 像素
turtle.circle(10) # 绘制半径为10 像素的圆
turtle.circle(40) # 绘制半径为40 像素的圆
turtle.circle(80) # 绘制半径为80 像素的圆
turtle.circle(160) # 绘制半径为160 像素的圆
  • 日期和时间的输出

代码实现:

from datetime import datetime # 引用datetime 库
now = datetime.now() # 获得当前日期和时间信息
print(now)
now.strftime("%x") # 输出其中的日期部分
now.strftime("%X") # 输出其中的时间部分
  • 字符串拼接

我们先了解一下什么是字符串。

字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[1]=“b”,s[9]="j",这可以给我们提供很多方便,如高精度运算时每一位都可以转化为数字存入数组。

这里我们要用的format函数。

Format是CString类的一个成员函数,它通过格式操作使任意类型的数据转换成一个字符串。Format参数也是一个格式化字符串。DateTime是时间类型。返回值是一种格式化后的字符串。

代码实现:

str1 = input("请输入一个人的名字:")
str2 = input("请输入一个国家名字:")
print("世界这么大,{}想去{}看看。".format(str1,str2))
  • 整数序列求和

这个实际上就是累加求和,用到了for i in range结构。“ for in range语句是python编程语言的内容,主要用于生成整数序列。具体用法如下:“for i in range(x, y):”这样可以生成从x到y-1的整数序列。

代码实现:

n = input("请输入整数N: ")
sum = 0
for i in range(int(n)):sum += i + 1
print("1 到N 求和结果: ", sum)
  • 九九乘法表输出

代码实现:

for i in range(1,10):for j in range(1,i+1):print("{}*{}={:2} ".format(j,i,i*j), end='')print('')

运行结果

  • 阶乘求和

代码实现:

sum, tmp = 0, 1
for i in range(1,11):tmp*=isum+=tmp
print("运算结果是: {}".format(sum))
  • 猴子吃桃问题

range(5,0,-1) 代表从5到0,间隔-1 (不包含5)。 即range(5,0,-1) =[4,3,2,1,0]。 加上for,就是代表 I 值在range(5,0,-1) 中”

我们就介绍range的用法。

range(start, stop [,step])

参数介绍:

  • start 指的是计数起始值,可以省略不写,默认是 0;

  • stop 指的是计数结束值,但不包括 stop ;

  • step 是步长,默认为 1,不可以为 0 。

(尤其注意:如果是三个参数,那么最后一个参数才表示为步长。)

ps1:只有一个参数:表示0到这个参数内的所有整数,不包含参数本身

ran = range(6)
# 定义一个list,将range范围内的数都存入list
arry_list = list(ran)
print(ran)
print(arry_list)运行结果如下
range(0, 6)
[0, 1, 2, 3, 4, 5]

ps2:

range函数有2个参数时,第一个参数,表示左边界,第2个参数表示右边界,含左不含右。

ran_new = range(1, 8)list_one = list(ran_new) # 将range范围内的数据都存入listprint(list_one)运行结果[1, 2, 3, 4, 5, 6, 7]

ps3:

range含有3个参数时,,第一个表示左边界,第二个表示右边界,第三个表示步长step,即两个整数之间相差的数,含左不含右。

ran_two = range(1, 16,2)list_two = list(ran_two)# list_two=print(ran_new)print(ran_two)print(list_two)运行结果为[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]range(1, 16)range(1, 16, 2)[1, 3, 5, 7, 9, 11, 13, 15]

代码实现:

n = 1
for i in range(5,0,-1):n = (n+1)<<1
print(n)
  • 健康食谱输出

代码实现:

diet = ['西红柿', '花椰菜', '黄瓜', '牛排', '虾仁']
for x in range(0, 5):for y in range(0, 5):if not(x == y):print("{}{}".format(diet[x], diet[y]))
  • 五角星绘制

代码实现:

from turtle import *
fillcolor("red")
begin_fill()
while True:forward(200)right(144)if abs(pos()) < 1:break
end_fill()

运行结果

  • 太阳花绘制

代码实现:

from turtle import *
color('red', 'yellow')
begin_fill()
while True:forward(200)left(170)if abs(pos()) < 1:break
end_fill()
done()

运行结果


今天通过学习了14个简单的python案例,我们能够明白python是如何输入输出的,下一篇,我们继续通过python的案例来学习python的奇妙之处。

【21天python打卡】第15天 python经典案例(1)相关推荐

  1. 零基础Python完全自学教程15:Python中的列表

    欢迎你来到站长学堂,学习站长在线出品的在线课程<零基础 Python完全自学教程>今天给大家分享的是第14课< Python中的列表 >.本节课是一个大课,我分了这些知识点进行 ...

  2. python用什么编译器-15款Python编辑器的优缺点,别再问我quot;选什么编辑器”啦

    本文介绍了多个 Python IDE,并评价其优缺点.读者可以参考此文列举的 Python IDE 列表,选择适合自己的编辑器. 写 Python 代码最好的方式莫过于使用集成开发环境(IDE)了.它 ...

  3. python抽卡游戏_【python爬虫】原神公测预抽卡活动自动化抽卡脚本(一小时免登陆)...

    [Python] 纯文本查看 复制代码import requests import json import time #pyinstaller -D -i favicon.ico crawl.py c ...

  4. python评分卡5_Logit例1_plot_logistic_l1_l2_sparsity

    python评分卡1_woe与IV值 python评分卡2_woe与IV分箱方法 python评分卡3_woe与IV分箱实现 python评分卡4_logistics原理与解法_sklearn英译汉 ...

  5. python评分卡4_logistics原理与解法_sklearn英译汉

    本系列分以下章节: python评分卡1_woe与IV值 python评分卡2_woe与IV分箱方法 python评分卡3_woe与IV分箱实现 python评分卡4_logistics原理与解法_s ...

  6. python评分卡1_woe与IV值

    本系列分以下章节: python评分卡1_woe与IV值 python评分卡2_woe与IV分箱方法 python评分卡3_woe与IV分箱实现 python评分卡4_logistics原理与解法_s ...

  7. 【21天python打卡】第9天 基础技能(2)

    ​​大家好,今天是21天python打卡的第9天,上一篇讲了python的相关技能,比如将时间日期的处理,数据文件的读写,以及数据库的简单操作.今天来说说源码打包和网络编程. ​ ​ 活动地址:CSD ...

  8. 21天学Python --- 打卡4:Python操作Mysql,Sqlserver

    21天学Python --- 打卡4:Python操作Mysql,Sqlserver 1.Execute Query 1.1 Install Plugins 1.2 Conn Parameters 1 ...

  9. 21天学Python --- 打卡2:Regular Expression

    21天学Python --- 打卡2:Regular Expression 1.Common characters 2.Priority 3.Demo 3.1 普通字符 3.2 中括号 3.3 首字母 ...

  10. 【21天python打卡】第2天 python预备知识(2)

    ​​大家好,今天是21天python打卡的第2天,我们要想学好python,要先了解一些关于python的基础知识.上一篇我们介绍了python的基本概念,python编程思想,python安装以及p ...

最新文章

  1. linux Address already in use 端口被占用解决办法
  2. Vivado综合报multi-driven nets的错误的解决方法
  3. 十个有用的linux命令行技巧
  4. 第三次作业-介绍一款原型设计工具
  5. 《机器学习实战》chapter 07利用AdaBoosting元算法提高分类性能
  6. 安卓php高级编辑器使用方法,Android Studio实战 - 编辑器介绍与使用
  7. ORB-SLAM2介绍(1)
  8. 基于APPIUM的移动自动化测试
  9. Docker容器虚拟化技术---Docker运维管理(Docker Compose)4
  10. 使用扩展存储过程xp_regread读取注册表信息
  11. python函数式编程-装饰器
  12. C语言图书借阅管理系统
  13. 电线电缆行业MES解决方案
  14. “保姆级教程“c语言开根号函数:sqrt()//文末附有详细c语言数学函数
  15. mysql jdbc 绑定变量_「MySQL高级特性——绑定变量」- 海风纷飞Blog
  16. 华清远见-重庆中心-JAVA高级阶段知识点梳理
  17. 2022-4-23基于单片机的酒驾检测报警系统(MQ3酒精传感器)(风吹摇铃 奔赴星海)
  18. php 自动抢红包机制,用脚本实现自动抢红包
  19. 串联谐振耐压试验装置技术参数和特点,如何选择
  20. Acrel-3000在青岛中冶圣乔维斯南区智能住宅小区的应用

热门文章

  1. ISO 27001解读(一)管理思路
  2. C#WinForm开发笔记——基本控件(一)
  3. 高级商务办公软件应用【1】
  4. 线性可分支持向量机 凸二次规划解决原问题 python
  5. Zepto Api参考
  6. 品优购-01分布式框架-Dubbox
  7. 开源版权 项目 字体
  8. 分享110个采集小偷PHP源码,总有一款适合你
  9. java手机号正则验证(电信、联通、移动、香港)
  10. MySQL中MGR中SECONDARY节点磁盘满,导致mysqld进程被OOM Killed