[LÖST] Kombinera kommando och variabel i Python.

Här diskuteras programmering och utveckling
Användarvisningsbild
HOLMEN
Fadder
Inlägg: 1724
Blev medlem: 29 mar 2006, 22:39
OS: Ubuntu
Utgåva: Vet inte/ingen utgåva passar
Ort: Göteborg
Kontakt:

[LÖST] Kombinera kommando och variabel i Python.

Inlägg av HOLMEN »

Halloj,

Håller på och mekar som fan med mitt allra första "riktiga" program, SixA.

Jag behöver dock lite hjälp: Hur kominerar man ett kommando med en variabel och sedan kör det som ett kommando?

Det jag vill åstakomma är tex att jag vill köra ett kommando som detta:

Kod: Markera allt

sixa action profile firefox
I koden så blir det:

Kod: Markera allt

sixa action profile $variabeln
Detta är koden där profilen hämtas, sparas i en variabel och som sedan ska köras:

Kod: Markera allt

	# Choose profiles
	def on_profile_switch_changed(self, box):
		model = box.get_model()
		index = box.get_active()
		if index:
			profile = model[index][0] 
			os.system("sixa action profile $variabeln")
			prf = pynotify.Notification ("SixA", "Profile changed to $variabeln", "sixa")
			prf.show ()
Någon som vet hur man alltså kan sätta in en variabel i ett kommndo och köra det med Python?
Senast redigerad av 1 HOLMEN, redigerad totalt 14 gånger.
Lars
Inlägg: 6191
Blev medlem: 14 jan 2007, 19:31
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Ort: Stockholm

Re: Kombinera kommando och variabel i Python.

Inlägg av Lars »

Du vill alltså bara foga in värdet av variabeln i en sträng? Det är ju trivialt ;)

Kod: Markera allt

os.system("sixa action profile %s" % variabeln)
Men du måste vara lite försiktig, det är inte så lyckat om variabeln har värdet "; rm -rf ~" eller liknande.
Användarvisningsbild
HOLMEN
Fadder
Inlägg: 1724
Blev medlem: 29 mar 2006, 22:39
OS: Ubuntu
Utgåva: Vet inte/ingen utgåva passar
Ort: Göteborg
Kontakt:

Re: Kombinera kommando och variabel i Python.

Inlägg av HOLMEN »

Det funkar!!! TACK! Jag har haft panik angående detta då vi har en deadline att SixA ska vara klart under morgondagen. Så här blev resultatet:

Kod: Markera allt

	def on_profile_switch_changed(self, box):
		model = box.get_model()
		index = box.get_active()
		if index:
			profile = model[index][0] 
			os.system("sixa action profile %s" % profile)
			prf = pynotify.Notification ("SixA", "Profile changed to %s" % profile, "sixa")
			prf.show ()
Alltså, verkligen - Tack Lars!
Skriv svar

Återgå till "Programmering och webbdesign"