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. JQuery Advanced

    1.Jquery Utility <1> Type & Function & setTimeOut <!DOCTYPE html> <html lang= ...

  2. 3D Slicer中文教程(一)—下载及安装方法

    3D Slicer是用于医学图像信息学,图像处理和三维可视化的开源软件平台. 通过国家卫生研究院和全球开发人员社区的支持,二十多年来,Slicer为医生,研究人员和公众提供了免费,强大的跨平台加工工具 ...

  3. C++设计模式——中介者模式

    前言 我们都知道,这个国际政治是一门很深的学问,不玩政治的人是搞不懂的.那么多的国家,国家之间的关系又及其复杂:就好比现在,美国和中国有经济利益关系,美国又和日本有盟友关系,朝鲜又和中国有说不清道不明 ...

  4. Tomcat:3DES解密时中文乱码

    情况说明:直接用main方法运行时是没有问题的,web程序一放入tomcat中就会出现解密时乱码. 解决办法: 在解密时,返回string时对数组需要指定UTF-8编码. public static ...

  5. Android屏幕旋转

    一个手机最基本的旋转方向有上面4种,而在Android开发中,涉及到屏幕旋转的地方很多,而且各个函数给出的角度值都不一样,比如 Activity的getRotate,Camera的setDisplay ...

  6. JS函数可以再添加属性(包括方法)

    1 前言 JS函数可以再添加属性(包括方法),这个有点有趣,记录一下. 2 代码 <!DOCTYPE html> <html> <head> <title&g ...

  7. 爬虫高性能 asyncio库 twisted库 tornado库

    一 背景知识 爬虫的本质就是一个socket客户端与服务端的通信过程,如果我们有多个url待爬取,只用一个线程且采用串行的方式执行,那只能等待爬取一个结束后才能继续下一个,效率会非常低. 需要强调的是 ...

  8. VS2010 开发 VB6.0 activeX控件 dll

    项目源码 https://download.csdn.net/download/csdn_z_s/10427764 开发环境 操作系统: win7 64位 旗舰版 Java语言开发环境:  Eclip ...

  9. 利用web.py快速搭建网页helloworld

    访问web.py官网 http://webpy.org/ 根据网站步骤,利用 pip install web.py 若没有 PIP 则先安装pip 运行 sudo apt-get install py ...

  10. Notes for "Python in a Nutshell"

    Introduction to Python Wrap C/C++ libraries into Python via Cython and CFFI. Python implementations ...