I Ruby kan jag göra såhär tjusigt:
Kod:
require 'rubygems'
require 'builder'
xml = Builder::XmlMarkup.new(:target=>STDOUT, :indent=>2)
xml.html do
xml.head do
xml.title("En genererad XHTML-sida")
end
xml.body do
xml.p("Lite text...")
end
end
Med resultatet:
Kod:
<html>
<head>
<title>En genererad XHTML-sida</title>
</head>
<body>
<p>Lite text...</p>
</body>
</html>
Ifall jag har kört:
som root. Har Python något liknande? Hur det nu skulle vara möjligt utan syntax för closures.
E: Det slog mig att man kan ha väldigt kul med Rubys flexibilitet.
Kod:
xml.instance_eval do
html{
body{
div(:id=>"container"){
div(:class=>"nav")
div("My website!", :class=>"contents")
}
}
}
end
->
Kod:
<html>
<body>
<div id="container">
<div class="nav"/>
<div class="contents">My website!</div>
</div>
</body>
</html>
Nu spårar jag ur offtopic med Ruby, detta är en Python-tråd. Meningen med mitt inlägg är frågan om Python har något liknande denna Builder.