利用python研究凸透镜成像规律的流程
- 利用python研究初中物理学中的凸透镜成像问题
- 利用程序有效的帮助学生减小学习时间,
- 提升学习效果 利用科技服务于教育
完整程序代码如下:
# -*- coding:utf-8 -*-
import time
import random
class Tutoujing():
"""凸透镜工作原理函数"""
#jiao_ju = int(input('(焦距)f=:'))
#wu_ju = int(input('(物距)u=:'))
input("透镜规律练习,请回车:")
jiao_ju = random.randint(5,20)
wu_ju = int(input('(物距)u=:'))
print('本次获取到的数据为焦距f={}cm,物距u={}cm'.format(jiao_ju,wu_ju))
def __init__(self):
self.jiao_ju = Tutoujing.jiao_ju
self.wu_ju = Tutoujing.wu_ju
#放大镜工作原理
def fang_da_jing(self):
if self.wu_ju < self.jiao_ju:
print('因为物距{}小于焦距{}'.format(self.wu_ju,self.jiao_ju))
print('根据u<f,这应该是放大镜的工作原理')
#投影仪工作原理
def tou_ying_yi(self):
if self.jiao_ju < self.wu_ju < 2 * self.jiao_ju:
print('因为物距{}cm大于1倍焦距{}cm,小于2倍焦距{}cm'.format(self.wu_ju,self.jiao_ju,2 * self.jiao_ju))
print('根据f<u<2f,这应该是投影仪的工作原理')
#照相机工作原理
def zhao_xiang_ji(self):
if self.wu_ju > 2 * self.jiao_ju:
print('因为物距{}cm大于2倍焦距{}cm'.format(self.wu_ju,2 * self.jiao_ju))
print('根据u>2f,这应该是照相机的工作原理')
#成等大像工作原理
def deng_da_xiang(self):
if self.wu_ju == 2 * self.jiao_ju:
print('因为物距{}cm等于2倍焦距{}cm'.format(self.wu_ju,2 * self.jiao_ju))
print('根据u=2f,此时物和相关于透镜中心对称,成的是倒立等大的实像,实际也常常用来求透镜焦距。')
time.sleep(1)
ttj = Tutoujing()
print('思考中......')
time.sleep(5)
ttj.fang_da_jing()
ttj.tou_ying_yi()
ttj.zhao_xiang_ji()
ttj.deng_da_xiang()
让程序服务教育,努力研究中。。。
如果您也有同样的爱好,欢迎一起为教育添砖加瓦!