树莓派怎么运行程序pathon

2025-02-27 08:11:25
推荐回答(2个)
回答1:

前言
Raspbian的系统中包含了Python的编程环境IDE,方便了我们对于python的学习。个人觉得还是游戏程序能够更好的激发我们的潜力所以,话不多说下面就来使用python编写我们简单的游戏程序吧。

储备知识
①import 模块:time时间模块、random随机数模块
②列表:[ ] #[]中放入值,与数组很像,但是不同
③def:定义函数
④python的缩进是编程格式的一种,if等都不需要{}括起来,关键看缩进区分
⑤if,while,def函数都要以 “:”开始

游戏概述
一进入游戏,主人公就会随机获取一个游戏已经设定的道具。最开始,主人公站在丛林的边缘,只有左右可选,左边是个洞穴,右边是沙滩。
选择左边,则开始可以获得手电筒,但是在洞穴中会碰到蛇hp-20,继续向下会到一个未知空间,游戏结束。
选择右边,会到沙滩 获得凉爽的水hp+70,但是由于没有游泳装备,如果继续选择游泳,会遇到海啸而死亡。

代码
[python] view plain copy 在CODE上查看代码片派生到我的代码片
#Python Adventure Game
import time
import random

#define variable health point
hp = 30

#define variable object_ to show what the adventurer has
object_=[]

#define variable what the game sets
tools = ["Torch","Rope","Spanner","50HP","10HP"]

#set two acceptable answers ,select any one to end loop
def get_input(prompt,accepted):
while True:
value = input(prompt).lower()

if value in accepted:
return value
else :
print("That is not a recognised answer,must be one of",accepted)

def handle_room(location) :
global hp

if location== "start":
print("You are stading on a path at the edge of a jungle.There is a cave to your left and a beach to your right.")
object_.append(random.choice(tools))
print("Lucky,you have gained",object_[-1])
use_tools(object_)
direction = get_input("Do you want to go left or right?",["left","right"])

if direction == "left":
return "cave"
elif direction == "right":
return "beach"

elif location == "cave":
print("On the entrance of cave,you find a torch!!!")
object_.append("Torch")
print("You walk to the cave and notice there is an opening.")
print("A small snake bites you,and you lose 20 health points.")
hp-=20

answer = get_input("Do you want to go deeper?(y/n)",["y","n"])
if answer == "y":
return "deep_cave"
elif answer == "n":
return "start"

elif location == "beach":
print("You walk to the beach but remember you do not have any swimwming equipment.")
print("The cool water revitalizes you.You have never felt more alive,gain 70 health points.")
hp+=70

answer = get_input("Do you want to go swimming?(y/n)",["y","n"])
if answer == "y":
return "sea"
elif answer == "n":
return "start"

elif location == "sea":
print("Suddenly there was a tsunami,you can't escape.")
hp=0
return "end"

else :
print("Programmer error,room",location,"is unknown")
return "end"

#define the function to use the tools of HP
def use_tools(tool):
global hp
length = len(tool)
for i in range(0,length):
if tool[i]=="50HP":
hp+=50
tool.pop(i)
print("You have use the tool of 50HP")
j+=1
elif tool[i]=="10HP":
hp+=10
tool.pop(i)
print("You have use the tool of 10HP")
j+=1

#The begin of the program.
location = "start"

#Loop until we reach the special "end" location
while location!="end":
location = handle_room(location)

#Check we are not dead each return
print("You now have",hp,"health points.")
if hp<=0:
print("You are dead.\nGame Over!!!")
break

print("Your adventure has ended,bye~")

回答2:

这个方式不用修改 rc.local 文件。机制上类似于 Windows 的“开始”菜单中的“启动”菜单。方法如下:

在 /home/pi/.config 下创建一个文件夹,名称为 autostart,并在该文件夹下创建一个xxx.desktop文件(文件名以.desktop结尾,前面可以自定义),文件内容如下:

[Desktop Entry]
Name=example
Comment=My Python Program
Exec=python /home/pi/example.py
Icon=/home/pi/example.png
Terminal=false
MultipleArgs=false
Type=Application
Categories=Application;Development;
StartupNotify=true

以上 Name、Comment、Icon 可以自定,分别表示这个启动项目的名称、备注以及显示的图标。Exec 表示调用的指令,和在终端输入运行脚本的指令格式一致。
之后 sudo reboot 重启,就可以看到 example.py 在树莓派启动后也自动启动了。