10 Project 1: Erste Schritte in Python
Animation
In den Projekten werden sie nicht nur statische Objekte, sondern auch physikalische
Prozesse darstellen, die eine Zeitkomponente haben. Wir brauchen also eine
Animation. Einer der groten Vorteile von VPython ist, dass das Erstellen von
Animationen so einfach ist.
Aufgabe: Erstellen Sie eine kleine Box nahe x = 5
und bezeichnen sie diese
als movingBox. Dann f¨ugen Sie den folgenden Code ein und beobachten Sie, was
passiert:
# Bewegen einer Box in einer geraden Linie
while movingBox.pos.x <5:
rate(50)
movingBox.pos.x += 0.05
Stellen sie sicher, dass Sie die letzten beiden Zeilen einr¨ucken.
Wenn der Code funktioniert, sollte die Box sich durch das Fenster bewegen und
bei x = 5 stoppen. Der Code, der das erreicht, ist eine Schleife (sog. loop), welche
im Allgemeinen einen Codeblock meint, den der Computer wiederholt ausf¨uhrt.
Einige Sprachen nutzen geschweifte Klammern, um zu kennzeichnen, welche Zeilen
des Codes Teil der Schleife sind, aber in Python wird dies angedeutet durch eine
Einr¨uckung. Diese bestimmte Art der Schleife hier beginnt mit dem Wort while
gefolgt von der Bedingung, die wahr sein muss so lange wie die Schleife andauert,
gefolgt von einem Doppelpunkt. Diese Bedingung kann jegliche Vergleichsoperatoren
beinhalten <, >, <=, >=, == ( und != , genauso wie die Boole’schen Operatoren
and, or, und not.
Die beiden einger¨uckten Zeilen selbst erfordern auch eine Erl¨auterung. Die
Erste (rate(50)) sagt dem Computer wie schnell er versuchen soll die Schleife
auszuf¨uhren – in diesem Fall 50 Mal pro Sekunde. Die n¨achste Zeile enth¨alt den
Operator +=, welcher dem Computer sagt, dass er die Zahl rechts zu der Variablen
links addieren soll. Der Befehl x += 42 ist komplett ¨aquivalent zu x = x + 42.
(Gleicherma?en k¨onnen die Operationen -=, *=, und /= benutzen werden.)
Aufgabe: Andern Sie den Parameter ¨ 50 in der Funktion rate zu einer anderen
Zahl und stellen Sie sicher, dass das den erwarteten E?ekt hat.
Aufgabe: F¨ugen Sie eine oder zwei Zeilen zu ihrem Code hinzu, welcher die Bewegung
der Box entlang einer Diagonalen bewirkt, anstatt direkt von links nach
rechts zu wandern. Stellen sie sicher, dass sich die Box nicht zu weit in eine andere
Richtung bewegt bevor die Bewegung stoppt.
Aufgabe: F¨ugen Sie einen Code zu ihrem Programm hinzu, um eine kleine Kugel zu
erzeugen, und dann bewegen sie diese Kugel mit einer gleichm¨a?igen Geschwindigkeit
einmal im Kreis in der xy-Ebene mit dem Ursprung als Zentrum der Drehbewegung.
Project 1: Erste Schritte in Python 11

代做statische Objekt作业、代写Python实验作业、代做Python编程语言作业
Nutzen sie eine Variable mit dem Namen theta f¨ur die Winkel um den Kreis herum
und setzen sie diese Variable zu Null, bevor ihre While-Schleife beginnt. Nutzen
Sie ebenfalls eine Variable mit dem Namen r f¨ur den Kreisradius sowie x und y
f¨ur seine kartesischen Koordinaten. Um x und y zu berechnen, k¨onnen Sie die
trigonometrischen Funktionen cos und sin benutzen, z.B. x = r * cos(theta).
Passen sie auf, denn die trigonometrischen Funktionen gehen davon aus, dass die
Werte, die Sie hier ¨ubergeben in der Einheit Radiant angegeben wird. Behalten
Sie das im Hinterkopf, wenn Sie entscheiden, um wieviel sich Theta ¨andern muss,
w¨ahrend jeder Schleifeniteration und f¨ur die Bedingung, die sie in dem while Befehl
benutzen. F¨ur die eigentliche Bewegung der Kugel in dem Grafikfenster, nutzen sie
einen Befehl in der Form movingSphere.pos = vector(x, y, 0).
Aufgabe: Schauen Sie in der Vpython Dokumentation nach, wie man eine Spur
an ein Objekt anh¨angt (“”attach a trail“”), wenn es sich bewegt. (Benutzen
Sie den einfacheren Parameter make_trail und nicht die kompliziertere Funktion
attach_trail .) H¨angen Sie eine Spure mit Punkten an ihre sich bewegende Kugel,
benutzen Sie das Attribut interval, um die Punkte etwas weiter auseinander zu
bringen als voreingestellt.
Aufgabe: : Erinnern Sie sich an die Funktion print? F¨ugen Sie einen entsprechenden
Code ein, um eine passende Nachricht auszugeben, wenn jede ihrer Animationsschleifen
(eine f¨ur die Box, eine f¨ur die Kugel) beendet ist.
12 Project 1: Erste Schritte in Python
Graphen
In der Wissenschaft wollen wir oft ein Ph¨anom nicht im physikalischen Raum visualisieren,
sondern in einer “Raum-Zeit” Dimension, wie Geschwindigkeit usw..
W¨ahrend wir theoretisch ein 3D VPython canvas nutzen k¨onnten, um solch einen
abstrakten Graphen zu erstellen, bietet VPython auch ein Objekt graph, der in der
Regel besser geeignet ist, an.
Als ein Beispiel wollen wir die x und y Position einer sich bewegenden Kugel
als eine Funktion der Zeit in einem Graph darstellen. Es folgt der Code, der den
Graphen einrichtet, wobei die beiden Datens¨atze in verschiedenen Farben gedruckt
werden:
graph(width=400, height=250)
xDots = gdots(color=color.green)
yDots = gdots(color=color.magenta)
Nach diesem Codeblock k¨onnen Sie einen Punkt zu dem Graphen hinzuf¨ugen, indem
sie folgende Zeile hinzuf¨ugen:
xDots.plot(t,x)
und in gleicher Weise mit yDots verfahren.
Aufgabe: F¨ugen Sie den Code, um einen Graphen zu erstellen vor dem bereits existierenden
Code, der die Kugel in einem Kreis bewegt, ein. Des Weiteren f¨ugen Sie
in diesen bereits existierenden Code eine Variable t ein, welche die Zeit repr¨asentiert.
Initialisieren Sie die Variable t gleich Null und erh¨ohen Sie den Wert dieser Variablen
bei jeder Schleifeniteration um 1. Zus¨atzlich f¨ugen Sie in der While-Schleife
die Zeilen ein, die die (t, x) und (t, y) Paare in gr¨un und Magenta drucken. F¨uhren
Sie das Programm aus, um sicher zu gehen, dass alles funktioniert.
Aufgabe: Schauen Sie in der Vpython Dokumentation nach den anderen Attributen
f¨ur das Objekt Graph. Legen Sie dann die Hintergrundfarbe zu wei? fest,
benennen Sie die beiden Achsen passend und geben Sie dem Graph einen Titel.
Achten Sie auf die M¨oglichkeit, wie ein Wertebereich, den der Graph anzeigen soll,
festgelegt werden kann – lassen Sie ihn aber in ihrem aktuellen Graph unspezifiziert,
was einer automatischen Anpassung des Wertebereiches entspricht.
Project 1: Erste Schritte in Python 13
Abschluss
Bevor Sie dieses Projekt einreichen, sehen Sie bitte nochmal ihr eigenes Programm
kritisch durch und stellen Sie sicher, dass es gut strukturiert und einfach zu lesen ist.
Der Code sollte in logische Gruppen eingeteilt und mit hilfreichen Kommentaren
versehen sein. Lassen Sie ihr Programm noch einmal laufen, um zu kontrollieren, ob
auch alles funktioniert und laden sie anschlie end ihre L¨osung als Datei im Format
.ipynb auf ILIAS in den vorgesehenen Ordner des Projekts 1 hoch.
14 Project 1: Erste Schritte in Python

因为专业,所以值得信赖。如有需要,请加QQ:99515681 或邮箱:99515681@qq.com

微信:codinghelp

10 Project 1: Erste Schritte in Python的更多相关文章

  1. 10个值得我们关注的python博客

    大家好,还记得我当时学习python的时候,我一直努力地寻找关于python的博客,但我发现它们的数量很少.这也是我建立这个博客的原因,向大家分享我自己学到的新知识.今天我向大家推荐10个值得我们关注 ...

  2. 10分钟搭建一个小型网页(python django)(hello world!)

    10分钟搭建一个小型网页(python django)(hello world!) 1.安装django pip install django 安装成功后,在Scripts目录下存在django-ad ...

  3. 10个最容易犯的Python开发错误

    10个最容易犯的Python开发错误 转载 2017年09月25日 16:54:36 标签: python / 大数据 / 大讲台   Python是一门简单易学的编程语言,语法简洁而清晰,并且拥有丰 ...

  4. 尚学linux课程---10、linux环境下安装python

    尚学linux课程---10.linux环境下安装python 一.总结 一句话总结: 直接在官网下载python的源码包即可,然后在linux下安装 linux下安装软件优先想到的的确是yum,但是 ...

  5. macOS Sierra(10.12.6), odoo(11.0), Python(3.5.4)配置

    欣闻odoo11支持python3环境了,赶紧在mac平台尝试一下: 前期设置,参考另篇文章:macOS Sierra 10.12.6 odoo 10.0 开发环境配置 因为odoo11尚未正式发布, ...

  6. 10款Web开发最佳的Python框架

    Python是跻身于当代IT世界最流行和代码最高效的编程语言之一.Python框架能帮助你快速启动Web应用. 1.CubicWeb CubicWeb的最重要的功能是其代码的可重用性,由一个个代码单元 ...

  7. 从 10.x 到 ArcGIS Pro 的 Python 迁移

    与 ArcGIS Pro 结合使用 Python 的方式与包括 ArcGIS Desktop.ArcGIS Server 以及 ArcGIS Engine 在内的其他 ArcGIS 产品不同. 地理处 ...

  8. 10 种常用 Matplotlib 图的 Python 代码

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 喜欢的朋友欢迎关注小编,除了分享技术文章之外还有很多福利,私信“资料”可以 ...

  9. 第10天 | 12天搞定Python,文件操作(超详细)

    在开发系统的过程中,经常会用到XML存储和传输数据,XML是一种用于标记电子文件使其具有结构性的标记语言,在博客中经常会见到. JSON是一种轻量级的数据交换格式,常被用在后端和前端的数据交互上,如你 ...

随机推荐

  1. POJ 1556 The Doors(线段相交+最短路)

    题目: Description You are to find the length of the shortest path through a chamber containing obstruc ...

  2. 用Python进行SQLite数据库操作

    简单的介绍 SQLite数据库是一款非常小巧的嵌入式开源数据库软件,也就是说没有独立的维护进程,所有的维护都来自于程序本身.它是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经 ...

  3. SpringMVC+Spring+Hibernate整合开发

    最近突然想认真研究下java web常用框架,虽然现在一直在用,但实现的整体流程不是很了解,就在网上搜索资料,尝试自己搭建,以下是自己的搭建及测试过程. 一.准备工作: 1/安装并配置java运行环境 ...

  4. liunx mysql 备份

    执行命令:mysqldump -uroot -p lanwei > lanwei2018-08-02.sql 出错 -bash: mysqldump: command not found 查看m ...

  5. vue 使用swiper的一些问题(页面渲染问题)

    //Swiper上下滚动初始化 swiper_init(){ this.$nextTick(function(){ var mySwiper = new Swiper ('.swiper-contai ...

  6. 【web】服务器推送的实现方式(转)

    轮询 http流 websocket   https://www.cnblogs.com/freud/p/8397934.html http2.0 浅谈Websocket.Ajax轮询和长连接(lon ...

  7. Penettation testing with the bush Shell

    1.  Network Reconnaissance first we can use the command to gather the site information by whois eg : ...

  8. 饮冰三年-人工智能-Python-19 Python网络编程

    Socket:套接字.作用:我们只需要安照socket的规定去编程,就不需要深入理解tcp/udp协议也可以实现 1:TCP协议 1.1  客户端服务端循环收发消息 # 1:引入stock模块(导包) ...

  9. Spring Boot 读取 resource 下文件

    支持linux下读取 import org.springframework.core.io.ClassPathResource; public byte[] getCertStream(String ...

  10. Spring Boot mybatis HashMap +layui 通用分页

    背景: mybatis 常用数据查询的方法都是先建实体类,再建Mapper,最后写Service,如果只是单纯的去查询数据显示,这样操作太麻烦.本文就以mybatis +layui创建通用分页类,简化 ...