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

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

  • 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)(n ≥ 2,n ∈ 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('')

运行结果

94.png


  • 阶乘求和

代码实现:

sum, tmp = 0, 1
for i in range(1,11):
    tmp*=i
    sum+=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范围内的数据都存入list
print(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()

运行结果

95.png


  • 太阳花绘制

代码实现:

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

运行结果

96.png

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

相关文章
|
2月前
|
iOS开发 MacOS Python
Python 编程案例:谁没交论文?输出并生成电子表格
Python 编程案例:谁没交论文?输出并生成电子表格
28 9
|
2月前
|
数据采集 前端开发 NoSQL
Python编程异步爬虫实战案例
Python编程异步爬虫实战案例
74 2
|
2月前
|
数据采集 自然语言处理 API
Python反爬案例——验证码的识别
Python反爬案例——验证码的识别
47 2
|
2月前
|
iOS开发 MacOS Python
Python编程小案例—利用flask查询本机IP归属并输出网页图片
Python编程小案例—利用flask查询本机IP归属并输出网页图片
26 1
|
2月前
|
存储 大数据 Python
案例学Python:filter()函数的用法,高级!
`filter()`函数是Python中处理序列数据的强大工具,它允许我们高效地根据条件过滤元素。通过结合匿名函数、常规函数或直接利用Python的内置逻辑,`filter()`提供了灵活且高效的过滤机制,尤其在大数据处理和内存敏感的应用中展现出其价值。掌握 `filter()`的使用,不仅能提升代码的可读性和效率,还能更好地适应Python的函数式编程风格。
44 2
|
2月前
|
IDE 开发工具 iOS开发
Python编程案例:查找指定文件大小的文件并输出路径
Python编程案例:查找指定文件大小的文件并输出路径
28 3
|
2月前
|
文件存储 iOS开发 MacOS
Python编程案例:文件查找并归类
Python编程案例:文件查找并归类
25 2
|
2月前
|
Python
Python编程案例:同一工作簿不同表单特定数据添加到工作簿的另一表单里
Python编程案例:同一工作簿不同表单特定数据添加到工作簿的另一表单里
18 1
|
2月前
|
iOS开发 MacOS Python
Python编程案例:根据姓名归档论文、报告
Python编程案例:根据姓名归档论文、报告
16 1
|
3月前
|
机器学习/深度学习 数据采集 数据可视化
跟着penguins案例学Seaborn之Pairplot
跟着penguins案例学Seaborn之Pairplot
107 1