Et nyt nationalt initiativ fra Industriens Fond, EIFO og Innovationsfonden – eksekveret af DTU Science Park og Teknologisk Institut– skal bygge bro mellem startups, SMV’er og Forsvaret.
Altså at det "incrementer" et par numre i en tekst, hvor jeg selv kan vælge hvor de stigende numre skal sættes ind.
Det er ligemeget om det er et særskilt program, eller om det er en macro til Excel, bare det virker :) Programmet skal i øvrigt være gratis :)
"""
def lines(text="blomster", p=0, i1=2, i2=4, test=False): u""" text er den tekst du vil have lagt numrene ind i. p er placeringen i teksten hvor du vil have det første nummer placeret i1 og i2 er max for nummerserierne. """ assert i1 > 0 and i2 > 0 if test: print vars() format = text[0:p]+"%(i)02i-%(j)02i"+text[p:] for i in range(1,i1+1): for j in range(1,i2+1): print format % vars()
if __name__ == "__main__": lines(test=True) lines(p=8,test=True) lines(p=4,test=True) lines(p=0,test=True)
bauerdata: tak for det fine program. men, jeg går ud fra jeg skal installere python for at det vil virke ikke? (ikke at det gør noget) og er den nye python 3.1 ok?
nissen2630: det er en dejlig simpel løsning, men den skulle helst gerne generere ALLE numrene helt automatisk, så jeg ikke skal ind og lave noget "manuelt" hver gang at de skifter til en række nye numre.
Altså at det "incrementer" et par numre i en tekst, hvor jeg selv kan vælge hvor de stigende numre skal sættes ind.
Det er ligemeget om det er et særskilt program, eller om det er en macro til Excel, bare det virker :) Programmet skal i øvrigt være gratis :)
"""
def lines(text="blomster", p1=0, p2=0, i1=2, i2=4, test=False): u""" text er den tekst du vil have lagt numrene ind i. p1 og p2 er placeringen i teksten hvor du vil have det første nummer og andet nummer placeret i1 og i2 er max for nummerserierne. """ if test: print vars() assert p1 <= p2 and i1 > 0 and i2 > 0 format = text[0:p1]+"%(i)02i" + text[p1:p2] + "%(j)02i" + text[:p2] for i in range(1,i1+1): for j in range(1,i2+1): print format % vars()
Alle siger at du skal vente med Python 3. Der er for mange 3. parts libs som ikke er klar. python 2.6 er er helt fin og der kommer nok en 2.7 før version 3 er moden.
Altså at det "incrementer" et par numre i en tekst, hvor jeg selv kan vælge hvor de stigende numre skal sættes ind.
Det er ligemeget om det er et særskilt program, eller om det er en macro til Excel, bare det virker :) Programmet skal i øvrigt være gratis :)
"""
def lines(text="blomster", p1=0, p2=0, i1=(1,3), i2=(1,3), test=False): u""" text er den tekst du vil have lagt numrene ind i. p1 og p2 er placeringen i teksten hvor du vil have det første nummer og andet nummer placeret i1 og i2 er (min, max) for nummerserierne. """ if test: print vars() assert p1 <= p2 and i1[0] < i1[1] and i2[0] < i2[1] format = text[0:p1]+"%(i)02i" + text[p1:p2] + "%(j)02i" + text[p2:] for i in range(i1[0],i1[1]+1): for j in range(i2[0],i2[1]+1): print format % vars()
#!/usr/bin/env python # -*- coding: UTF-8 -*- # Her er en version med argumenter på komando linien. """ USAGE: %(progname)s [-t <text>] [-p <pos>] [-q <pos>] [-i <interval>] [-j <interval>] [-T] -t <text> : default "blomster". Tekst som tællerne i og j sættes ind i -p <pos> : default 0. Position i tekst for første tal. -q <pos> : default 0. Position i tekst for andet tal. -i <interval> : Default 1,3. Start og slut værdier for første tal. -j <interval> : Default 1,3. Start og slut værdier for andet tal. -T : test udskrifter. -h : denne tekst udskrives.
def lines(text="blomster", p1=0, p2=0, i1=(1,3), i2=(1,3), test=False): u""" text er den tekst du vil have lagt numrene ind i. p1 og p2 er placeringen i teksten hvor du vil have det første nummer og andet nummer placeret i1 og i2 er (min, max) for nummerserierne. """ if test: print vars() assert p1 <= p2 and i1[0] <= i1[1] and i2[0] <= i2[1] format = text[0:p1]+"%(i)02i" + text[p1:p2] + "%(j)02i" + text[p2:] for i in range(i1[0],i1[1]+1): for j in range(i2[0],i2[1]+1): print format % vars()
try: if opt == "-p": p = int(val) if opt == "-q": q = int(val) if opt == "-i": if not "," in val: Usage("Option error: i er et interval f.eks 1,4") i = [int(x) for x in val.split(",") ] if opt == "-j": if not "," in val: Usage("Option error: j er et interval f.eks 1,4") j = [int(x) for x in val.split(",") ] except ValueError: Usage("Option error: Tal forventet, bogstav(er) givet")
shit bauerdata! det er godt nok et flot program du har lavet, mere end jeg overhovedet turde spørge efter, med alle de indbyggede options eller argumenter på kommandolinjen som du siger.
Er der en måde hvorpå jeg kan give dig flere point? du fortjener mange flere.
Det er jo kun for sjov det her. Jeg hygger mig med det, nogen spiller spil , jeg koder. Men jeg lever også af det så hvis du har noget rigtigt arbejde med python så sig bare til.
god pointe bauerdata. du er bestemt på min huskeliste, skulle jeg engang få brug for professionelt programmørarbejde - tak! :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.