sumo與python的介面 TraCI

2021-10-22 09:45:16 字數 2186 閱讀 5589

官網

首先找到traci的安裝目錄:sumo\tools

開啟python的安裝目錄(或者anaconda安裝目錄)–>lib-->site-packages,在該目錄下新建traci.pth檔案,在該檔案中輸入traci的安裝目錄。

ps:可通過cmd開啟python輸入import traci檢驗是否安裝成功。

from __future__ import absolute_import

from __future__ import print_function

import os

import sys

import optparse

import random

import traci

import time

from sumolib import checkbinary

#檢測是否已經新增環境變數

if'sumo_home'

in os.environ:

tools = os.path.

join

(os.environ[

'sumo_home'],

'tools'

) sys.path.

(tools)

else

: sys.

exit

("please declare environment variable 'sumo_home'"

) #sumo自帶的,不知道有啥用

def get_options()

: optparser = optparse.

optionparser()

optparser.

add_option

("--nogui"

, action=

"store_true"

,default

=false, help=

"run the commandline version of sumo"

) options, args = optparser.

parse_args()

return options

#主函式

if __name__ ==

"__main__"

: options =

get_options()

if options.nogui:

sumobinary =

checkbinary

('sumo'

)else

: sumobinary =

checkbinary

('sumo-gui'

)

sumocfgfile =

"e:\\sumo\\template\\template.sumocfg" #sumocfg檔案的位置

traci.

start

([sumobinary,

"-c"

, sumocfgfile]

) #開啟sumocfg檔案

for step in

range(0

,3600

): #**時間

traci.

simulationstep

() #一步一步(一幀一幀)進行**

#time.

sleep

(0.1

) simulation_time = traci.simulation.

gettime

() #獲得**時間

print

("**時間是"

,simulation_time)

all_vehicle_id = traci.vehicle.

getidlist

() #獲得所有車的id

#獲取所有車的position

all_vehicle_position =

[(i, traci.vehicle.

getposition

(i))

for i in all_vehicle_id]

traci.

close

()

python之POST介面與GET介面開發簡單例子

我所使用的是python3.6.5,django版本是2.0.5 get請求 建立引數字典 result username request.get.get username telnum request.get.get telnum date request.get.get date result ...

python介面類 Python中的介面類與抽象類

介面類 物件導向中的繼承有兩種用途 1 可以通過繼承做到 重用,並完成擴充套件 2 介面繼承。所謂的介面繼承就是定義乙個介面類 inte ce,介面類中定義了一些介面 就是函式,但這些函式都沒有具體的實現 子類繼承介面類,並且實現介面中的功能 介面繼承可以使得外部呼叫者無需關心具體的實現細節,可用相...

Python介面的實現與呼叫

對於物件導向程式設計來說,有三個概念一定要知道 封裝 繼承和多型。python本身就是一種多型語言,即不同的類中可以定義相同的方法 函式 名稱。所謂介面是一種特殊的類,宣告了若干方法,要求繼承該介面的類必須實現這些方法,否則會報錯。具體 實現如下 from abc import abcmeta,ab...