实验代码

1.编写函数。计算传入的字符串中数字、字母、空格、其他字符的个数。

def count(s):num = 0alpha = 0space = 0other = 0for i in s:if i.isdigit():num += 1elif i.isalpha():alpha += 1elif i.isspace():space += 1else:other += 1print("数字的个数是:%d" % num)print("字母的个数是:%d" % alpha)print("空格的个数是:%d" % space)print("其他字符的个数是:%d" % other)return num,alpha,space,other
count(s = input("请输入一个字符串:"))

2.输入整数n,计算并输出n的阶乘值(循环和递归两种方式完成)。
循环:

a = 1
n = eval(input("请输入一个整数:"))
for i in range(1,n+1):a = a * i
print(a)

递归:

def factorial(n):if n == 0 or n == 1:return 1else:return (n*factorial(n-1))
a = factorial(eval(input("请输入一个整数:")))
print(a)

3.编写函数,计算并输出斐波那契数列前n项(0,1,1,2,3,5,8,13,…)(循环和递归两种方式完成)。
循环:

n=int(input('\n确定显示多少个数:'))
n1=0
n2=1
count=2
if n<=0:                 #判断输入值是否合法print('输入数字有误')
elif n==1:print(n1)
else:print("斐波那契数列:",n1,"",n2,end="  ")while count<n:nn=n1+n2print(nn,end="  ")n1=n2           #更新数值n2=nncount+=1

递归:

def fb(n):if n <= 1:return nelse:return (fb(n - 1) + fb(n - 2))# 获取用户输入
S = int(input("您要输出几项? "))# 检查输入的数字是否正确
if S <= 0:print("输入正数")
else:print("斐波那契数列:", end=" ")for i in range(S):print(fb(i), end=" ")

4.角谷猜想(冰雹猜想),编写代码计算用户输入的数据经多少次运算后可变为1。

def guess(number):i = 0             # 统计变换的次数number = number   # 记录最初的numberwhile number != 1:if number % 2 == 0:    # number为偶数number = number / 2else:                  # number为奇数number = number * 3 + 1i += 1return i
num = int(input("请输入一个大于1的正整数:"))
count=guess(num)
print(f"{num}经过{count}次变换后回到1")

5.编程实现七段数码管绘制当前日期

import turtle
import time
#七段数码管绘制当前日期
def drawGap():turtle.penup()turtle.fd(5)
def drawLine(draw):drawGap()turtle.pendown() if draw else turtle.penup()turtle.fd(40)drawGap()turtle.right(90)
def drawDigit(digit):drawLine(True) if digit in [2,3,4,5,6,8,9] else drawLine(False)drawLine(True) if digit in [0,1,3,4,5,6,7,8,9] else drawLine(False)drawLine(True) if digit in [0,2,3,5,6,8,9] else drawLine(False)drawLine(True) if digit in [0,2,6,8] else drawLine(False)turtle.left(90)drawLine(True) if digit in [0,4,5,6,8,9] else drawLine(False)drawLine(True) if digit in [0,2,3,5,6,7,8,9] else drawLine(False)drawLine(True) if digit in [0,1,2,3,4,7,8,9] else drawLine(False)turtle.left(180)turtle.penup()turtle.fd(20)
def drawDate(date):turtle.pencolor("red")for i in date:if i == '-':turtle.write('年',font=("Arial",18,"normal"))turtle.pencolor("green")turtle.fd(40)elif i == '=':turtle.write('月',font=("Arial",18,"normal"))turtle.pencolor("blue")turtle.fd(40)elif i == '+':turtle.write('日',font=("Arial",18,"normal"))else:drawDigit(eval(i))
def main():turtle.setup(800,350,200,200)turtle.penup()turtle.fd(-300)turtle.pensize(5)drawDate(time.strftime('%Y-%m=%d+',time.gmtime()))turtle.hideturtle()turtle.done()
main()

6.绘制科赫曲线。

# 导入turtle模块
import turtle as t
# 绘制科赫曲线
def koch(size, n):if n == 0:t.fd(size)else:for angle in [0, 60, -120, 60]:t.left(angle)koch(size/3, n-1)
# 设置色彩
t.color('black')
# 设置画笔大小
t.pensize(2)
# 开始绘制
t.speed(0)
t.penup()
t.goto(-200, 100)
t.pendown()
koch(400, 3)
t.hideturtle()
# 等待用户点击
t.exitonclick()
t.done()

7.编程绘制科赫雪花。

import turtle
def koch(size, n):if n == 0:turtle.fd(size)else:for angle in [0, 60, -120, 60]:turtle.left(angle)koch(size/3, n-1)
def main():turtle.speed(0)turtle.setup(600,600)turtle.penup()turtle.goto(-200, 100)turtle.pendown()turtle.pensize(2)level = 3            # 3阶科赫雪花,阶数koch(400, level)turtle.right(120)koch(400, level)turtle.right(120)koch(400, level)turtle.hideturtle()turtle.done()
main()

Python实验、函数和代码复用相关推荐

  1. python之函数和代码复用笔记

    这一章的内容有点多,我也尝试一下这个目录是怎么用的,,哈哈 本章节内容如下 一,前言 二,函数的定义与使用 1,函数的理解与定义 2,函数的使用及调用过程 (1)函数的使用 (2)函数的调用过程 3, ...

  2. Python| 阿尔法函数和代码复用

    目录 打招呼函数 能否组成三角形函数 计算n个自然数的立方和 简单计算器实现 转换秒为时间 最大公约数 杨辉三角 线性查找 七段数码管绘制 斐波那契数列计算 汉诺塔实践 合法的用户名 科赫雪花小包裹 ...

  3. python函数是一段具有特定功能的语句组_Python学习笔记(五)函数和代码复用

    本文将为您描述Python学习笔记(五)函数和代码复用,具体完成步骤: 函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Pyth ...

  4. python中组合数据类型、函数和代码复用的难点_Python电子教案5-2 函数和代码复用...

    <Python电子教案5-2 函数和代码复用>由会员分享,可在线阅读,更多相关<Python电子教案5-2 函数和代码复用(56页珍藏版)>请在人人文库网上搜索. 1.七段数码 ...

  5. Python基础(三)_函数和代码复用

    三:函数和代码复用 (一)函数的基本使用 1.函数的定义 函数是一段具有特定功能的.可重用的语句组,用函数名来表示并通过函数名进行功能调用.函数也可以看作是一段具有名字的子程序,可以在需要的地方调用执 ...

  6. 测验5: 函数和代码复用 (第5周)

    测验5: 函数和代码复用 (第5周) 文章目录 测验5: 函数和代码复用 (第5周) 单选题 程序题 这是python123官网上联合MOOC的Python程序设计(第10期)答案 单选题 第三题补充 ...

  7. 第 5 章 函数和代码复用

    整理的文章内容主要来源为高教版<计算机等级考试二级 Python>教程视频讲义,并且更正了原讲义中的错误的地方. 专栏文章索引如下: 考试大纲 第 1 章 程序设计基本方法 第 2 章 P ...

  8. 第五章 函数和代码复用

    第五章 函数和代码复用 5.1 函数的基本使用 5.1.1 函数的定义 定义:函数是一段具有特定功能的.可重用的语句组,用函数名来表示并通过函数名进行功能调用. 使用函数的目的:降低编程难度和代码重用 ...

  9. 函数和代码复用之实例解析:软文的诗词风

    @TOC函数和代码复用之实例解析:软文的诗词风 人生苦短,我学Python 朋友圈已经是现代人生活中的一种社交形态,朋友圈里面的各种软文也体现了语言风格的变化.为了便于手机阅读,很多软文常常会使用一种 ...

  10. python通过封装可以实现代码复用_Python学习笔记(五)函数和代码复用

    函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Python提供了许多内建函数,比如print().同样,你也可以自己创建函数, ...

最新文章

  1. GROMACS运行参数之em_real.mdp文件详解
  2. 深入“肠-脑”神经高速通道,揭开“第六感觉”面纱
  3. 我的Android进阶之旅------Android自定义View来实现解析lrc歌词并同步滚动、上下拖动、缩放歌词的功能...
  4. html取 输入框中的值,jquery获取input输入框中的值
  5. java 加载中_Java 6类加载中更快的是什么?
  6. ant java xml文件,ant 学习(2)-ant开发java程序,buile.xml文件分离
  7. (65)FPGA模块例化(parameter)
  8. Selenium:利用select模块处理下拉框
  9. php 保護連接字符串,PHP字符串操作
  10. 如何自定义安装mysql_安装MySQL
  11. Oracle P6培训系列:17建立基线
  12. Jmeter使用技巧集锦大全
  13. wpa_supplicant详解
  14. 百度地图 java 纠偏_模板:纠偏服务首页 | 百度地图API SDK
  15. borderColor与CGColor/UIColor
  16. 心书微信书 v1.0.0
  17. Springboot实战项目完结篇之商城系统之收货地址管理
  18. jvm最大堆内存和最小堆内存保持什么样的关系 系统性能最好
  19. 素数问题与质因子分解
  20. 初学开关电源设计全过程笔记

热门文章

  1. docker搭建企业级habor仓库
  2. springClude简单配置
  3. python图片修复软件下载_python实现的jpg格式图片修复代码
  4. 计算机是通过电网进行传播,2016年9月计算机一级MS Office考前必做试题及答案(4)...
  5. Java异常 | JedisException: Could not get a resource from the pool
  6. 服务降级,限流,削峰
  7. [CF_GYM102900L]Traveling in the Grid World
  8. xiecheng_spider
  9. java怎么绘画坦克_坦克游戏教程一:使用java绘图功能绘制简单坦克
  10. java web 蓝牙打印_android 蓝牙打印机示例