| Trees | Indices | Help |
|---|
|
|
1 # -*- coding: utf-8 -*- 2 # 3 # 4 # filename: universal.py 5 # 6 # version: see wxvf.py 7 # 8 # 9 # ---------------------------------------------------------------------------------------- 10 # 11 # 12 # Copyright (C) 2010 Michael Bellair 13 # 14 # This file is part of wxvf. 15 # 16 # wxvf is free software: you can redistribute it and/or modify 17 # it under the terms of the GNU General Public License as published by 18 # the Free Software Foundation, either version 3 of the License, or 19 # (at your option) any later version. 20 # 21 # wxvf is distributed in the hope that it will be useful, 22 # but WITHOUT ANY WARRANTY; without even the implied warranty of 23 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 24 # GNU General Public License for more details. 25 # 26 # You should have received a copy of the GNU General Public License 27 # along with wxvf. If not, see <http://www.gnu.org/licenses/>. 28 # 29 # Michael Bellair 30 # Sportplatzstrasse 11 31 # 01259 Dresden 32 # 33 # E-Mail: bellair@freenet.de 34 # homepage: http://freenet-homepage.de/bellair/vf/index.html 35 # 36 # 37 # ---------------------------------------------------------------------------------------- 38 # 39 40 41 # 42 # 43 # 44 # ---------------------------------------------------------------------------------------- 45 # ---------------------------------------------------------------------------------------- 46 # -- -------------------------------------------------- 47 # -- Offene Punkte / Aufgaben -------------------------------------------------- 48 # -- -------------------------------------------------- 49 # ---------------------------------------------------------------------------------------- 50 # ---------------------------------------------------------------------------------------- 51 # 52 # 53 # -- siehe TODO 'universal.py' -- 54 # 55 # 56 # ---------------------------------------------------------------------------------------- 57 # 58 59 60 # 61 # 62 # 63 # ---------------------------------------------------------------------------------------- 64 # ---------------------------------------------------------------------------------------- 65 # -- -------------------------- 66 # -- -------------------------- 67 # ---------------------------------------------------------------------------------------- 68 # ---------------------------------------------------------------------------------------- 69 # 70 71 72 # 73 # 74 # 75 # ---------------------------------------------------------------------------------------- 76 # ---------------------------------------------------------------------------------------- 77 # -- -------------------------------------------------- 78 # -- Klasse für Zeichenketten -------------------------------------------------- 79 # -- -------------------------------------------------- 80 # ---------------------------------------------------------------------------------------- 81 # ---------------------------------------------------------------------------------------- 82 #84 """ 85 Klasse, die Funktionen zur Zeichenkettenbehandlung bereitstellt. 86 """ 87 88 # 89 # ------------------------------------------------------------------------------------ 90 # -- Initialisierungen -------------------------------------------------- 91 # ------------------------------------------------------------------------------------ 92 #282 283 284 285 286 # 287 # ---------------------------------------------------------------------------------------- 288 # -- Zeichenkettenobjekt anlegen zur direkten Verwendung -------------------------- 289 # ---------------------------------------------------------------------------------------- 290 # 291 zk = Zk() 29294 95 self.LeerZk = '-- bleibt leer --' 96 """ 97 Leerzeichenketten erhalten den Standardtext C{-- bleibt leer --}. 98 99 @cvar: Leerzeichenkette 100 @type: Zeichenkette 101 """102 103 104 105 # 106 # ------------------------------------------------------------------------------------ 107 # -- Datum als yyyy-mm-dd zurückgeben ---------------------------------- 108 # ------------------------------------------------------------------------------------ 109 #111 """ 112 Die im Format 'tt.mm.jjjj' vorliegende Datum-Zeichenkette wird im Format 'yyyy-mm-dd' zurückgegeben. 113 114 @param zkDatum: Es ist die Datum-Zeichenkette zu übergeben, die umgewnadelt werden soll. 115 @type zkDatum: Zeichenkette 116 117 @return: Siehe Beschreibung. 118 @rtype: Zeichenkette 119 """ 120 121 # 122 # -- Zeichenkette zurückgeben ------------------------------------------ 123 # 124 return zkDatum[6:10] + '-' + zkDatum[3:5] + '-' + zkDatum[0:2]125 126 127 128 # 129 # ------------------------------------------------------------------------------------ 130 # -- Werteteilmenge aus verketteter Lister zurückgeben ------------------ 131 # ------------------------------------------------------------------------------------ 132 #134 """ 135 Es werden die Werte einer 'Spalte' aus der verketteten Liste C{liste} zurückgegeben 136 137 @param liste: Es ist die verkettete Liste zu übergeben. 138 @type liste: Python - Liste 139 140 @param spalte: Es ist die Spalte anzugeben. 141 @type spalte: Python - Liste 142 143 @return: Siehe Beschreibung. 144 @rtype: Zeichenkette 145 """ 146 147 # 148 # -- Werte der Spalte [spalte] zurückgeben ---------------------------------- 149 # 150 erg = [] 151 for i in range( len( liste ) ) : 152 153 erg.append( liste[i][spalte] ) 154 155 156 # 157 # -- Werte der Spalte zurückgeben ------------------------------------------ 158 # 159 return erg160 161 162 163 # 164 # ------------------------------------------------------------------------------------ 165 # -- Werteteilmenge aus verketteter Lister zurückgeben ------------------ 166 # ------------------------------------------------------------------------------------ 167 #169 """ 170 Es werden die Werte einer 'Spalte' aus der verketteten Liste C{liste} als Zeichenkette zurückgegeben 171 172 @param liste: Es ist die verkettete Liste zu übergeben. 173 @type liste: Python - Liste 174 175 @param spalte: Es ist die Spalte anzugeben. 176 @type spalte: Python - Liste 177 178 @return: Siehe Beschreibung. 179 @rtype: Zeichenkette 180 """ 181 182 # 183 # -- Werte der Spalte zurückgeben ------------------------------------------ 184 # 185 return str( self.gibListeTeilmenge( liste = liste, spalte = spalte ) ).replace('[','').replace(']','')186 187 188 189 190 # 191 # ------------------------------------------------------------------------------------ 192 # -- Leerzeichenketten besonders kennzeichnen -------------------------- 193 # ------------------------------------------------------------------------------------ 194 #196 """ 197 Identifikationsnummer, Wert und Notizen formatiert ausgeben. 198 199 @param id: Es ist die Identifikationsnummer zu übergeben, die dargestellt werden soll. Sie wird mit führenden Nullen dargestellt. 200 @type id: Ganzzahl 201 202 @param zusInfo: Es ist eine Zusatzinformation zu übergeben, die der C{id} unmittelbar folgt. 203 @type zusInfo: Zeichenkette 204 205 @param wert: Es ist der Wert zu übergeben, der dargestellt werden soll. 206 @type wert: Zeichenkette 207 208 @param notizen: Es isnd die Notizen zu übergeben, die dargestellt werden sollen. 209 @type notizen: Zeichenkette 210 211 @return: Siehe Beschreibung. 212 @rtype: Zeichenkette 213 """ 214 215 # 216 # -- Zeichenkette zurückgeben ------------------------------------------ 217 # 218 zk = str( id ).zfill( 4 ) + zusInfo 219 if( wert is not None ) : zk = zk + '\t' + wert 220 if( notizen is not None ) : zk = zk + '\t|\t' + notizen 221 222 return zk223 224 225 226 227 # 228 # ------------------------------------------------------------------------------------ 229 # -- Leerzeichenketten besonders kennzeichnen -------------------------- 230 # ------------------------------------------------------------------------------------ 231 #233 """ 234 Wenn eine Leerzeichenkette (siehe C{istLeer(...)}) vorliegt, wird der Standardtext aus C{self.LeerZk} zurückgegeben. Liegt keine Leerzeichenkette vor, wird C{zk} zurückgegeben. 235 236 @param zk: Es ist die Zeichenkette zu übergeben, die untersucht werden soll. 237 @type zk: Zeichenkette 238 239 @param leerZkAlternativ: Es ist eine alternative Leerzeichenkette anzugeben 240 @type leerZkAlternativ: Zeichenkette 241 242 @return: Siehe Beschreibung. 243 @rtype: Zeichenkette 244 """ 245 246 # 247 # -- Zeichenkette zurückgeben ------------------------------------------ 248 # 249 if( self.istLeer( zk ) ) : 250 if( leerZkAlternativ is None ) : return self.LeerZk 251 else : return leerZkAlternativ 252 else : return zk253 254 255 256 # 257 # ------------------------------------------------------------------------------------ 258 # -- Die Zeichenkette ist leer ------------------------------------------ 259 # ------------------------------------------------------------------------------------ 260 #262 """ 263 Die Zeichenkette ist leer. Leere Zeichenketten liegen dann vor, wenn C{None} bzw. die Länge der Leichenkette Null ist, nachdem alle C{! ? . - whitespaces} entfernt wurden. 264 265 @param zk: Es ist die Zeichenkette zu übergeben, die geprüft werden soll. 266 @type zk: Zeichenkette 267 268 @return: Es wird C{True} zurückgegeben, wenn die Zeichenkette leer ist. 269 @rtype: Boolean 270 """ 271 272 # 273 # -- Es liegt 'None' vor -------------------------------------------------- 274 # 275 if( zk == None ) : return True 276 277 # 278 # -- Die folgenden Zeichen werden als 'Leer' interpretiert: ------------------ 279 # -- ! ? . - whitespaces ---------- 280 # 281 return ( len( zk.replace( '!', '' ).replace( '?', '' ).replace( '.', '' ).replace( '-', '' ).strip() ) == 0 )
| Trees | Indices | Help |
|---|
| Generated by Epydoc 3.0.1 on Tue Apr 13 19:20:18 2010 | http://epydoc.sourceforge.net |