Funciones en Python (Parte 3)

Publicado por Gio M en 17:10
Vamos a intentar hacer funciones con la información que tenemos hasta el momento. Ya tenemos una función que es la siguiente:

1- IMPRIMIR: FUNCIÓN PARA IMPRIMIR SEGÚN LA PRIMER LETRA DE UNA PALABRA


def imprimir(*frase):
    for palabras in frase:
        if palabras[0] == "h": print palabras

# Esta función recibe argumentos infinitos de tipo string y devuelve todos los que inician con la letra "h"
imprimir("hola", "hacha", "ola", "acha", "heraldo")
> "hola" "hacha" "heraldo"


2- ALPHA_CENTAURY: FUNCIÓN PARA COLOCAR LAS LETRAS DE UNA FRASE EN UNA LISTA

def alpha_centaury(hola = "hello world",lista = []):
    for letras in hola:
        lista.append(letras)
        print lista

   
Esta función toma todas las letras del argumento hola y los introduce dentro del argumento lista. Utiliza for...in, el método append de las listas, y los argumentos dinámicos, todo eso ya explicado anteriormente.

alpha_centaury() # La llamamos de esta forma

Devuelve como resultado algo como esto:

['h']
['h', 'e']
['h', 'e', 'l']
['h', 'e', 'l', 'l']
['h', 'e', 'l', 'l', 'o']
['h', 'e', 'l', 'l', 'o', ' ']
['h', 'e', 'l', 'l', 'o', ' ', 'w']
['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o']
['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r']
['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l']
['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']

alpha_centaury("Alpha Centaury") # La llamamos de esta forma

Devuelve lo siguiente:

['A']
['A', 'l']
['A', 'l', 'p']
['A', 'l', 'p', 'h']
['A', 'l', 'p', 'h', 'a']
['A', 'l', 'p', 'h', 'a', ' ']
['A', 'l', 'p', 'h', 'a', ' ', 'C']
['A', 'l', 'p', 'h', 'a', ' ', 'C', 'e']
['A', 'l', 'p', 'h', 'a', ' ', 'C', 'e', 'n']
['A', 'l', 'p', 'h', 'a', ' ', 'C', 'e', 'n', 't']
['A', 'l', 'p', 'h', 'a', ' ', 'C', 'e', 'n', 't', 'a']
['A', 'l', 'p', 'h', 'a', ' ', 'C', 'e', 'n', 't', 'a', 'u']
['A', 'l', 'p', 'h', 'a', ' ', 'C', 'e', 'n', 't', 'a', 'u', 'r']
['A', 'l', 'p', 'h', 'a', ' ', 'C', 'e', 'n', 't', 'a', 'u', 'r', 'y']

Si quisiéramos que nos devolviese únicamente la última lista, o sea

['A', 'l', 'p', 'h', 'a', ' ', 'C', 'e', 'n', 't', 'a', 'u', 'r', 'y']

Modificaríamos la función para que nos quedase de esta forma:

def alpha_centaury(hola = "hello world",lista = []):
    for letras in hola:
        lista.append(letras)
    print lista

De esta forma la llamaríamos de esta forma:

alpha_centaury("Alpha Centaury")
Y nos devolvería lo siguiente:

['A', 'l', 'p', 'h', 'a', ' ', 'C', 'e', 'n', 't', 'a', 'u', 'r', 'y']

Si quisiéramos que nos introdujera en la lista lo mismo pero todas las letras en mayúsculas, modificaríamos la función y nos quedaría de la siguiente forma:

def alpha_centaury(hola = "hello world",lista = []):
    for letras in hola:
        lista.append(letras.upper())
    print lista


Agregando el método upper en for..in, donde letras es cada letra del argumento hola. Nos devuelve lo siguiente:

['A', 'L', 'P', 'H', 'A', ' ', 'C', 'E', 'N', 'T', 'A', 'U', 'R', 'Y']


Si quisiéramos que nos devolviese esta lista pero invertida, modificaríamos la función de la siguiente forma:

def alpha_centaury(hola = "hello world",lista = []):
    for letras in hola:
        lista.append(letras.upper())
    lista.reverse()
    print lista


Nos devolvería lo siguiente

['Y', 'R', 'U', 'A', 'T', 'N', 'E', 'C', ' ', 'A', 'H', 'P', 'L', 'A']

3- TABLAS_DE_MULTIPLICAR: Función que muestra las tablas de multiplicar de un número hasta un rango específico


def tablas_de_multiplicar(num,hasta = 10):
    inicio=num
    ind = 1
    fin=num*hasta
    while inicio<=fin:
        print str(num) + " x " + str(ind) + "= " + str(inicio)
        inicio=inicio+num
        ind = ind + 1


Para mostrar la tabla del número 3 sería de la siguiente forma:

tablas_de_multiplicar(3)

Devolvería lo siguiente:

3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
3 x 4 = 12
3 x 5 = 15
3 x 6 = 18
3 x 7 = 21
3 x 8 = 24
3 x 9 = 27
3 x 10 = 30


Ahora si queremos que las tablas superen los 10 números, especificamos el número máximo

tablas_de_multiplicar(3, 500)


Y nos devuelve las tablas de multiplicación del 3, hasta llegar al número 500

3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
3 x 4 = 12
3 x 5 = 15
3 x 6 = 18
3 x 7 = 21
3 x 8 = 24
3 x 9 = 27
3 x 10 = 30
3 x 11 = 33
3 x 12 = 36
3 x 13 = 39
3 x 14 = 42
3 x 15 = 45
3 x 16 = 48
3 x 17 = 51
3 x 18 = 54
3 x 19 = 57
3 x 20 = 60
3 x 21 = 63
3 x 22 = 66
3 x 23 = 69
3 x 24 = 72
3 x 25 = 75
3 x 26 = 78
3 x 27 = 81
3 x 28 = 84
3 x 29 = 87
3 x 30 = 90
3 x 31 = 93
3 x 32 = 96
3 x 33 = 99
3 x 34 = 102
3 x 35 = 105
3 x 36 = 108
3 x 37 = 111
3 x 38 = 114
3 x 39 = 117
3 x 40 = 120
3 x 41 = 123
3 x 42 = 126
3 x 43 = 129
3 x 44 = 132
3 x 45 = 135
3 x 46 = 138
3 x 47 = 141
3 x 48 = 144
3 x 49 = 147
3 x 50 = 150
3 x 51 = 153
3 x 52 = 156
3 x 53 = 159
3 x 54 = 162
3 x 55 = 165
3 x 56 = 168
3 x 57 = 171
3 x 58 = 174
3 x 59 = 177
3 x 60 = 180
3 x 61 = 183
3 x 62 = 186
3 x 63 = 189
3 x 64 = 192
3 x 65 = 195
3 x 66 = 198
3 x 67 = 201
3 x 68 = 204
3 x 69 = 207
3 x 70 = 210
3 x 71 = 213
3 x 72 = 216
3 x 73 = 219
3 x 74 = 222
3 x 75 = 225
3 x 76 = 228
3 x 77 = 231
3 x 78 = 234
3 x 79 = 237
3 x 80 = 240
3 x 81 = 243
3 x 82 = 246
3 x 83 = 249
3 x 84 = 252
3 x 85 = 255
3 x 86 = 258
3 x 87 = 261
3 x 88 = 264
3 x 89 = 267
3 x 90 = 270
3 x 91 = 273
3 x 92 = 276
3 x 93 = 279
3 x 94 = 282
3 x 95 = 285
3 x 96 = 288
3 x 97 = 291
3 x 98 = 294
3 x 99 = 297
3 x 100 = 300
3 x 101 = 303
3 x 102 = 306
3 x 103 = 309
3 x 104 = 312
3 x 105 = 315
3 x 106 = 318
3 x 107 = 321
3 x 108 = 324
3 x 109 = 327
3 x 110 = 330
3 x 111 = 333
3 x 112 = 336
3 x 113 = 339
3 x 114 = 342
3 x 115 = 345
3 x 116 = 348
3 x 117 = 351
3 x 118 = 354
3 x 119 = 357
3 x 120 = 360
3 x 121 = 363
3 x 122 = 366
3 x 123 = 369
3 x 124 = 372
3 x 125 = 375
3 x 126 = 378
3 x 127 = 381
3 x 128 = 384
3 x 129 = 387
3 x 130 = 390
3 x 131 = 393
3 x 132 = 396
3 x 133 = 399
3 x 134 = 402
3 x 135 = 405
3 x 136 = 408
3 x 137 = 411
3 x 138 = 414
3 x 139 = 417
3 x 140 = 420
3 x 141 = 423
3 x 142 = 426
3 x 143 = 429
3 x 144 = 432
3 x 145 = 435
3 x 146 = 438
3 x 147 = 441
3 x 148 = 444
3 x 149 = 447
3 x 150 = 450
3 x 151 = 453
3 x 152 = 456
3 x 153 = 459
3 x 154 = 462
3 x 155 = 465
3 x 156 = 468
3 x 157 = 471
3 x 158 = 474
3 x 159 = 477
3 x 160 = 480
3 x 161 = 483
3 x 162 = 486
3 x 163 = 489
3 x 164 = 492
3 x 165 = 495
3 x 166 = 498
3 x 167 = 501
3 x 168 = 504
3 x 169 = 507
3 x 170 = 510
3 x 171 = 513
3 x 172 = 516
3 x 173 = 519
3 x 174 = 522
3 x 175 = 525
3 x 176 = 528
3 x 177 = 531
3 x 178 = 534
3 x 179 = 537
3 x 180 = 540
3 x 181 = 543
3 x 182 = 546
3 x 183 = 549
3 x 184 = 552
3 x 185 = 555
3 x 186 = 558
3 x 187 = 561
3 x 188 = 564
3 x 189 = 567
3 x 190 = 570
3 x 191 = 573
3 x 192 = 576
3 x 193 = 579
3 x 194 = 582
3 x 195 = 585
3 x 196 = 588
3 x 197 = 591
3 x 198 = 594
3 x 199 = 597
3 x 200 = 600
3 x 201 = 603
3 x 202 = 606
3 x 203 = 609
3 x 204 = 612
3 x 205 = 615
3 x 206 = 618
3 x 207 = 621
3 x 208 = 624
3 x 209 = 627
3 x 210 = 630
3 x 211 = 633
3 x 212 = 636
3 x 213 = 639
3 x 214 = 642
3 x 215 = 645
3 x 216 = 648
3 x 217 = 651
3 x 218 = 654
3 x 219 = 657
3 x 220 = 660
3 x 221 = 663
3 x 222 = 666
3 x 223 = 669
3 x 224 = 672
3 x 225 = 675
3 x 226 = 678
3 x 227 = 681
3 x 228 = 684
3 x 229 = 687
3 x 230 = 690
3 x 231 = 693
3 x 232 = 696
3 x 233 = 699
3 x 234 = 702
3 x 235 = 705
3 x 236 = 708
3 x 237 = 711
3 x 238 = 714
3 x 239 = 717
3 x 240 = 720
3 x 241 = 723
3 x 242 = 726
3 x 243 = 729
3 x 244 = 732
3 x 245 = 735
3 x 246 = 738
3 x 247 = 741
3 x 248 = 744
3 x 249 = 747
3 x 250 = 750
3 x 251 = 753
3 x 252 = 756
3 x 253 = 759
3 x 254 = 762
3 x 255 = 765
3 x 256 = 768
3 x 257 = 771
3 x 258 = 774
3 x 259 = 777
3 x 260 = 780
3 x 261 = 783
3 x 262 = 786
3 x 263 = 789
3 x 264 = 792
3 x 265 = 795
3 x 266 = 798
3 x 267 = 801
3 x 268 = 804
3 x 269 = 807
3 x 270 = 810
3 x 271 = 813
3 x 272 = 816
3 x 273 = 819
3 x 274 = 822
3 x 275 = 825
3 x 276 = 828
3 x 277 = 831
3 x 278 = 834
3 x 279 = 837
3 x 280 = 840
3 x 281 = 843
3 x 282 = 846
3 x 283 = 849
3 x 284 = 852
3 x 285 = 855
3 x 286 = 858
3 x 287 = 861
3 x 288 = 864
3 x 289 = 867
3 x 290 = 870
3 x 291 = 873
3 x 292 = 876
3 x 293 = 879
3 x 294 = 882
3 x 295 = 885
3 x 296 = 888
3 x 297 = 891
3 x 298 = 894
3 x 299 = 897
3 x 300 = 900
3 x 301 = 903
3 x 302 = 906
3 x 303 = 909
3 x 304 = 912
3 x 305 = 915
3 x 306 = 918
3 x 307 = 921
3 x 308 = 924
3 x 309 = 927
3 x 310 = 930
3 x 311 = 933
3 x 312 = 936
3 x 313 = 939
3 x 314 = 942
3 x 315 = 945
3 x 316 = 948
3 x 317 = 951
3 x 318 = 954
3 x 319 = 957
3 x 320 = 960
3 x 321 = 963
3 x 322 = 966
3 x 323 = 969
3 x 324 = 972
3 x 325 = 975
3 x 326 = 978
3 x 327 = 981
3 x 328 = 984
3 x 329 = 987
3 x 330 = 990
3 x 331 = 993
3 x 332 = 996
3 x 333 = 999
3 x 334 = 1002
3 x 335 = 1005
3 x 336 = 1008
3 x 337 = 1011
3 x 338 = 1014
3 x 339 = 1017
3 x 340 = 1020
3 x 341 = 1023
3 x 342 = 1026
3 x 343 = 1029
3 x 344 = 1032
3 x 345 = 1035
3 x 346 = 1038
3 x 347 = 1041
3 x 348 = 1044
3 x 349 = 1047
3 x 350 = 1050
3 x 351 = 1053
3 x 352 = 1056
3 x 353 = 1059
3 x 354 = 1062
3 x 355 = 1065
3 x 356 = 1068
3 x 357 = 1071
3 x 358 = 1074
3 x 359 = 1077
3 x 360 = 1080
3 x 361 = 1083
3 x 362 = 1086
3 x 363 = 1089
3 x 364 = 1092
3 x 365 = 1095
3 x 366 = 1098
3 x 367 = 1101
3 x 368 = 1104
3 x 369 = 1107
3 x 370 = 1110
3 x 371 = 1113
3 x 372 = 1116
3 x 373 = 1119
3 x 374 = 1122
3 x 375 = 1125
3 x 376 = 1128
3 x 377 = 1131
3 x 378 = 1134
3 x 379 = 1137
3 x 380 = 1140
3 x 381 = 1143
3 x 382 = 1146
3 x 383 = 1149
3 x 384 = 1152
3 x 385 = 1155
3 x 386 = 1158
3 x 387 = 1161
3 x 388 = 1164
3 x 389 = 1167
3 x 390 = 1170
3 x 391 = 1173
3 x 392 = 1176
3 x 393 = 1179
3 x 394 = 1182
3 x 395 = 1185
3 x 396 = 1188
3 x 397 = 1191
3 x 398 = 1194
3 x 399 = 1197
3 x 400 = 1200
3 x 401 = 1203
3 x 402 = 1206
3 x 403 = 1209
3 x 404 = 1212
3 x 405 = 1215
3 x 406 = 1218
3 x 407 = 1221
3 x 408 = 1224
3 x 409 = 1227
3 x 410 = 1230
3 x 411 = 1233
3 x 412 = 1236
3 x 413 = 1239
3 x 414 = 1242
3 x 415 = 1245
3 x 416 = 1248
3 x 417 = 1251
3 x 418 = 1254
3 x 419 = 1257
3 x 420 = 1260
3 x 421 = 1263
3 x 422 = 1266
3 x 423 = 1269
3 x 424 = 1272
3 x 425 = 1275
3 x 426 = 1278
3 x 427 = 1281
3 x 428 = 1284
3 x 429 = 1287
3 x 430 = 1290
3 x 431 = 1293
3 x 432 = 1296
3 x 433 = 1299
3 x 434 = 1302
3 x 435 = 1305
3 x 436 = 1308
3 x 437 = 1311
3 x 438 = 1314
3 x 439 = 1317
3 x 440 = 1320
3 x 441 = 1323
3 x 442 = 1326
3 x 443 = 1329
3 x 444 = 1332
3 x 445 = 1335
3 x 446 = 1338
3 x 447 = 1341
3 x 448 = 1344
3 x 449 = 1347
3 x 450 = 1350
3 x 451 = 1353
3 x 452 = 1356
3 x 453 = 1359
3 x 454 = 1362
3 x 455 = 1365
3 x 456 = 1368
3 x 457 = 1371
3 x 458 = 1374
3 x 459 = 1377
3 x 460 = 1380
3 x 461 = 1383
3 x 462 = 1386
3 x 463 = 1389
3 x 464 = 1392
3 x 465 = 1395
3 x 466 = 1398
3 x 467 = 1401
3 x 468 = 1404
3 x 469 = 1407
3 x 470 = 1410
3 x 471 = 1413
3 x 472 = 1416
3 x 473 = 1419
3 x 474 = 1422
3 x 475 = 1425
3 x 476 = 1428
3 x 477 = 1431
3 x 478 = 1434
3 x 479 = 1437
3 x 480 = 1440
3 x 481 = 1443
3 x 482 = 1446
3 x 483 = 1449
3 x 484 = 1452
3 x 485 = 1455
3 x 486 = 1458
3 x 487 = 1461
3 x 488 = 1464
3 x 489 = 1467
3 x 490 = 1470
3 x 491 = 1473
3 x 492 = 1476
3 x 493 = 1479
3 x 494 = 1482
3 x 495 = 1485
3 x 496 = 1488
3 x 497 = 1491
3 x 498 = 1494
3 x 499 = 1497
3 x 500 = 1500

Esto aplica varios de los conceptos que hemos estado explicando hasta el momento.

0 Respuestas a 'Funciones en Python (Parte 3)'

Publicar un comentario