{"cells":[{"cell_type":"code","execution_count":48,"metadata":{},"outputs":[{"output_type":"stream","name":"stdout","text":["True\nTrue\n"]}],"source":["# endswith and starts with a tuple.\n","def gettuples():\n"," return (\"this is really good archx cxc dffk.txt\", \"fdsfdsfsdf.py\")\n","\n","a,b = gettuples()\n","print(a.endswith(('.txt','.py')))\n","print(b.endswith(('.py')))\n"," "]},{"cell_type":"code","execution_count":49,"metadata":{},"outputs":[{"output_type":"stream","name":"stdout","text":["['app.js']\n"]}],"source":["# list comprehension.\n","import os\n","jsFiles = [file for file in os.listdir('.') if file.endswith('.js')]\n","print(jsFiles)"]},{"cell_type":"code","execution_count":50,"metadata":{},"outputs":[{"output_type":"stream","name":"stdout","text":["5412 W CLARK ST\n1060 W ADDISON ST\n"]}],"source":["# Use of fnmatch and nice way to print list items one line at a time.\n","from fnmatch import fnmatch\n","addresses = [\n"," \"5412 W CLARK ST\",\n"," \"1060 W ADDISON ST\",\n"," \"4802 N BROADWAY\"\n","]\n","\n","streets = [address for address in addresses if fnmatch(address, \"* ST\")]\n","print(*streets, sep=\"\\n\", end=\"\\n\")\n",""]},{"cell_type":"code","execution_count":51,"metadata":{},"outputs":[{"output_type":"execute_result","data":{"text/plain":["{0: None,\n"," 1: None,\n"," 2: None,\n"," 3: None,\n"," 4: None,\n"," 5: None,\n"," 6: None,\n"," 7: None,\n"," 8: None,\n"," 9: None,\n"," 10: None,\n"," 11: None,\n"," 12: None,\n"," 13: None,\n"," 14: None,\n"," 15: None,\n"," 16: None,\n"," 17: None,\n"," 18: None,\n"," 19: None,\n"," 20: None,\n"," 21: None,\n"," 22: None,\n"," 23: None,\n"," 24: None,\n"," 25: None,\n"," 26: None,\n"," 27: None,\n"," 28: None,\n"," 29: None,\n"," 30: None,\n"," 31: None,\n"," 32: None,\n"," 33: None,\n"," 34: None,\n"," 35: None,\n"," 36: None,\n"," 37: None,\n"," 38: None,\n"," 39: None,\n"," 40: None,\n"," 41: None,\n"," 42: None,\n"," 43: None,\n"," 44: None,\n"," 45: None,\n"," 46: None,\n"," 47: None,\n"," 48: None,\n"," 49: None,\n"," 50: None,\n"," 51: None,\n"," 52: None,\n"," 53: None,\n"," 54: None,\n"," 55: None,\n"," 56: None,\n"," 57: None,\n"," 58: None,\n"," 59: None,\n"," 60: None,\n"," 61: None,\n"," 62: None,\n"," 63: None,\n"," 64: None,\n"," 65: None,\n"," 66: None,\n"," 67: None,\n"," 68: None,\n"," 69: None,\n"," 70: None,\n"," 71: None,\n"," 72: None,\n"," 73: None,\n"," 74: None,\n"," 75: None,\n"," 76: None,\n"," 77: None,\n"," 78: None,\n"," 79: None,\n"," 80: None,\n"," 81: None,\n"," 82: None,\n"," 83: None,\n"," 84: None,\n"," 85: None,\n"," 86: None,\n"," 87: None,\n"," 88: None,\n"," 89: None,\n"," 90: None,\n"," 91: None,\n"," 92: None,\n"," 93: None,\n"," 94: None,\n"," 95: None,\n"," 96: None,\n"," 97: None,\n"," 98: None,\n"," 99: None,\n"," 100: None,\n"," 101: None,\n"," 102: None,\n"," 103: None,\n"," 104: None,\n"," 105: None,\n"," 106: None,\n"," 107: None,\n"," 108: None,\n"," 109: None,\n"," 110: None,\n"," 111: None,\n"," 112: None,\n"," 113: None,\n"," 114: None,\n"," 115: None,\n"," 116: None,\n"," 117: None,\n"," 118: None,\n"," 119: None,\n"," 120: None,\n"," 121: None,\n"," 122: None,\n"," 123: None,\n"," 124: None,\n"," 125: None,\n"," 126: None,\n"," 127: None,\n"," 128: None,\n"," 129: None,\n"," 130: None,\n"," 131: None,\n"," 132: None,\n"," 133: None,\n"," 134: None,\n"," 135: None,\n"," 136: None,\n"," 137: None,\n"," 138: None,\n"," 139: None,\n"," 140: None,\n"," 141: None,\n"," 142: None,\n"," 143: None,\n"," 144: None,\n"," 145: None,\n"," 146: None,\n"," 147: None,\n"," 148: None,\n"," 149: None,\n"," 150: None,\n"," 151: None,\n"," 152: None,\n"," 153: None,\n"," 154: None,\n"," 155: None,\n"," 156: None,\n"," 157: None,\n"," 158: None,\n"," 159: None,\n"," 160: None,\n"," 161: None,\n"," 162: None,\n"," 163: None,\n"," 164: None,\n"," 165: None,\n"," 166: None,\n"," 167: None,\n"," 168: None,\n"," 169: None,\n"," 170: None,\n"," 171: None,\n"," 172: None,\n"," 173: None,\n"," 174: None,\n"," 175: None,\n"," 176: None,\n"," 177: None,\n"," 178: None,\n"," 179: None,\n"," 180: None,\n"," 181: None,\n"," 182: None,\n"," 183: None,\n"," 184: None,\n"," 185: None,\n"," 186: None,\n"," 187: None,\n"," 188: None,\n"," 189: None,\n"," 190: None,\n"," 191: None,\n"," 192: None,\n"," 193: None,\n"," 194: None,\n"," 195: None,\n"," 196: None,\n"," 197: None,\n"," 198: None,\n"," 199: None,\n"," 200: None,\n"," 201: None,\n"," 202: None,\n"," 203: None,\n"," 204: None,\n"," 205: None,\n"," 206: None,\n"," 207: None,\n"," 208: None,\n"," 209: None,\n"," 210: None,\n"," 211: None,\n"," 212: None,\n"," 213: None,\n"," 214: None,\n"," 215: None,\n"," 216: None,\n"," 217: None,\n"," 218: None,\n"," 219: None,\n"," 220: None,\n"," 221: None,\n"," 222: None,\n"," 223: None,\n"," 224: None,\n"," 225: None,\n"," 226: None,\n"," 227: None,\n"," 228: None,\n"," 229: None,\n"," 230: None,\n"," 231: None,\n"," 232: None,\n"," 233: None,\n"," 234: None,\n"," 235: None,\n"," 236: None,\n"," 237: None,\n"," 238: None,\n"," 239: None,\n"," 240: None,\n"," 241: None,\n"," 242: None,\n"," 243: None,\n"," 244: None,\n"," 245: None,\n"," 246: None,\n"," 247: None,\n"," 248: None,\n"," 249: None,\n"," 250: None,\n"," 251: None,\n"," 252: None,\n"," 253: None,\n"," 254: None,\n"," 255: None,\n"," 256: None,\n"," 257: None,\n"," 258: None,\n"," 259: None,\n"," 260: None,\n"," 261: None,\n"," 262: None,\n"," 263: None,\n"," 264: None,\n"," 265: None,\n"," 266: None,\n"," 267: None,\n"," 268: None,\n"," 269: None,\n"," 270: None,\n"," 271: None,\n"," 272: None,\n"," 273: None,\n"," 274: None,\n"," 275: None,\n"," 276: None,\n"," 277: None,\n"," 278: None,\n"," 279: None,\n"," 280: None,\n"," 281: None,\n"," 282: None,\n"," 283: None,\n"," 284: None,\n"," 285: None,\n"," 286: None,\n"," 287: None,\n"," 288: None,\n"," 289: None,\n"," 290: None,\n"," 291: None,\n"," 292: None,\n"," 293: None,\n"," 294: None,\n"," 295: None,\n"," 296: None,\n"," 297: None,\n"," 298: None,\n"," 299: None,\n"," 300: None,\n"," 301: None,\n"," 302: None,\n"," 303: None,\n"," 304: None,\n"," 305: None,\n"," 306: None,\n"," 307: None,\n"," 308: None,\n"," 309: None,\n"," 310: None,\n"," 311: None,\n"," 312: None,\n"," 313: None,\n"," 314: None,\n"," 315: None,\n"," 316: None,\n"," 317: None,\n"," 318: None,\n"," 319: None,\n"," 320: None,\n"," 321: None,\n"," 322: None,\n"," 323: None,\n"," 324: None,\n"," 325: None,\n"," 326: None,\n"," 327: None,\n"," 328: None,\n"," 329: None,\n"," 330: None,\n"," 331: None,\n"," 332: None,\n"," 333: None,\n"," 334: None,\n"," 335: None,\n"," 336: None,\n"," 337: None,\n"," 338: None,\n"," 339: None,\n"," 340: None,\n"," 341: None,\n"," 342: None,\n"," 343: None,\n"," 344: None,\n"," 345: None,\n"," 346: None,\n"," 347: None,\n"," 348: None,\n"," 349: None,\n"," 350: None,\n"," 351: None,\n"," 352: None,\n"," 353: None,\n"," 354: None,\n"," 355: None,\n"," 356: None,\n"," 357: None,\n"," 358: None,\n"," 359: None,\n"," 360: None,\n"," 361: None,\n"," 362: None,\n"," 363: None,\n"," 364: None,\n"," 365: None,\n"," 366: None,\n"," 367: None,\n"," 368: None,\n"," 369: None,\n"," 370: None,\n"," 371: None,\n"," 372: None,\n"," 373: None,\n"," 374: None,\n"," 375: None,\n"," 376: None,\n"," 377: None,\n"," 378: None,\n"," 379: None,\n"," 380: None,\n"," 381: None,\n"," 382: None,\n"," 383: None,\n"," 384: None,\n"," 385: None,\n"," 386: None,\n"," 387: None,\n"," 388: None,\n"," 389: None,\n"," 390: None,\n"," 391: None,\n"," 392: None,\n"," 393: None,\n"," 394: None,\n"," 395: None,\n"," 396: None,\n"," 397: None,\n"," 398: None,\n"," 399: None,\n"," 400: None,\n"," 401: None,\n"," 402: None,\n"," 403: None,\n"," 404: None,\n"," 405: None,\n"," 406: None,\n"," 407: None,\n"," 408: None,\n"," 409: None,\n"," 410: None,\n"," 411: None,\n"," 412: None,\n"," 413: None,\n"," 414: None,\n"," 415: None,\n"," 416: None,\n"," 417: None,\n"," 418: None,\n"," 419: None,\n"," 420: None,\n"," 421: None,\n"," 422: None,\n"," 423: None,\n"," 424: None,\n"," 425: None,\n"," 426: None,\n"," 427: None,\n"," 428: None,\n"," 429: None,\n"," 430: None,\n"," 431: None,\n"," 432: None,\n"," 433: None,\n"," 434: None,\n"," 435: None,\n"," 436: None,\n"," 437: None,\n"," 438: None,\n"," 439: None,\n"," 440: None,\n"," 441: None,\n"," 442: None,\n"," 443: None,\n"," 444: None,\n"," 445: None,\n"," 446: None,\n"," 447: None,\n"," 448: None,\n"," 449: None,\n"," 450: None,\n"," 451: None,\n"," 452: None,\n"," 453: None,\n"," 454: None,\n"," 455: None,\n"," 456: None,\n"," 457: None,\n"," 458: None,\n"," 459: None,\n"," 460: None,\n"," 461: None,\n"," 462: None,\n"," 463: None,\n"," 464: None,\n"," 465: None,\n"," 466: None,\n"," 467: None,\n"," 468: None,\n"," 469: None,\n"," 470: None,\n"," 471: None,\n"," 472: None,\n"," 473: None,\n"," 474: None,\n"," 475: None,\n"," 476: None,\n"," 477: None,\n"," 478: None,\n"," 479: None,\n"," 480: None,\n"," 481: None,\n"," 482: None,\n"," 483: None,\n"," 484: None,\n"," 485: None,\n"," 486: None,\n"," 487: None,\n"," 488: None,\n"," 489: None,\n"," 490: None,\n"," 491: None,\n"," 492: None,\n"," 493: None,\n"," 494: None,\n"," 495: None,\n"," 496: None,\n"," 497: None,\n"," 498: None,\n"," 499: None,\n"," 500: None,\n"," 501: None,\n"," 502: None,\n"," 503: None,\n"," 504: None,\n"," 505: None,\n"," 506: None,\n"," 507: None,\n"," 508: None,\n"," 509: None,\n"," 510: None,\n"," 511: None,\n"," 512: None,\n"," 513: None,\n"," 514: None,\n"," 515: None,\n"," 516: None,\n"," 517: None,\n"," 518: None,\n"," 519: None,\n"," 520: None,\n"," 521: None,\n"," 522: None,\n"," 523: None,\n"," 524: None,\n"," 525: None,\n"," 526: None,\n"," 527: None,\n"," 528: None,\n"," 529: None,\n"," 530: None,\n"," 531: None,\n"," 532: None,\n"," 533: None,\n"," 534: None,\n"," 535: None,\n"," 536: None,\n"," 537: None,\n"," 538: None,\n"," 539: None,\n"," 540: None,\n"," 541: None,\n"," 542: None,\n"," 543: None,\n"," 544: None,\n"," 545: None,\n"," 546: None,\n"," 547: None,\n"," 548: None,\n"," 549: None,\n"," 550: None,\n"," 551: None,\n"," 552: None,\n"," 553: None,\n"," 554: None,\n"," 555: None,\n"," 556: None,\n"," 557: None,\n"," 558: None,\n"," 559: None,\n"," 560: None,\n"," 561: None,\n"," 562: None,\n"," 563: None,\n"," 564: None,\n"," 565: None,\n"," 566: None,\n"," 567: None,\n"," 568: None,\n"," 569: None,\n"," 570: None,\n"," 571: None,\n"," 572: None,\n"," 573: None,\n"," 574: None,\n"," 575: None,\n"," 576: None,\n"," 577: None,\n"," 578: None,\n"," 579: None,\n"," 580: None,\n"," 581: None,\n"," 582: None,\n"," 583: None,\n"," 584: None,\n"," 585: None,\n"," 586: None,\n"," 587: None,\n"," 588: None,\n"," 589: None,\n"," 590: None,\n"," 591: None,\n"," 592: None,\n"," 593: None,\n"," 594: None,\n"," 595: None,\n"," 596: None,\n"," 597: None,\n"," 598: None,\n"," 599: None,\n"," 600: None,\n"," 601: None,\n"," 602: None,\n"," 603: None,\n"," 604: None,\n"," 605: None,\n"," 606: None,\n"," 607: None,\n"," 608: None,\n"," 609: None,\n"," 610: None,\n"," 611: None,\n"," 612: None,\n"," 613: None,\n"," 614: None,\n"," 615: None,\n"," 616: None,\n"," 617: None,\n"," 618: None,\n"," 619: None,\n"," 620: None,\n"," 621: None,\n"," 622: None,\n"," 623: None,\n"," 624: None,\n"," 625: None,\n"," 626: None,\n"," 627: None,\n"," 628: None,\n"," 629: None,\n"," 630: None,\n"," 631: None,\n"," 632: None,\n"," 633: None,\n"," 634: None,\n"," 635: None,\n"," 636: None,\n"," 637: None,\n"," 638: None,\n"," 639: None,\n"," 640: None,\n"," 641: None,\n"," 642: None,\n"," 643: None,\n"," 644: None,\n"," 645: None,\n"," 646: None,\n"," 647: None,\n"," 648: None,\n"," 649: None,\n"," 650: None,\n"," 651: None,\n"," 652: None,\n"," 653: None,\n"," 654: None,\n"," 655: None,\n"," 656: None,\n"," 657: None,\n"," 658: None,\n"," 659: None,\n"," 660: None,\n"," 661: None,\n"," 662: None,\n"," 663: None,\n"," 664: None,\n"," 665: None,\n"," 666: None,\n"," 667: None,\n"," 668: None,\n"," 669: None,\n"," 670: None,\n"," 671: None,\n"," 672: None,\n"," 673: None,\n"," 674: None,\n"," 675: None,\n"," 676: None,\n"," 677: None,\n"," 678: None,\n"," 679: None,\n"," 680: None,\n"," 681: None,\n"," 682: None,\n"," 683: None,\n"," 684: None,\n"," 685: None,\n"," 686: None,\n"," 687: None,\n"," 688: None,\n"," 689: None,\n"," 690: None,\n"," 691: None,\n"," 692: None,\n"," 693: None,\n"," 694: None,\n"," 695: None,\n"," 696: None,\n"," 697: None,\n"," 698: None,\n"," 699: None,\n"," 700: None,\n"," 701: None,\n"," 702: None,\n"," 703: None,\n"," 704: None,\n"," 705: None,\n"," 706: None,\n"," 707: None,\n"," 708: None,\n"," 709: None,\n"," 710: None,\n"," 711: None,\n"," 712: None,\n"," 713: None,\n"," 714: None,\n"," 715: None,\n"," 716: None,\n"," 717: None,\n"," 718: None,\n"," 719: None,\n"," 720: None,\n"," 721: None,\n"," 722: None,\n"," 723: None,\n"," 724: None,\n"," 725: None,\n"," 726: None,\n"," 727: None,\n"," 728: None,\n"," 729: None,\n"," 730: None,\n"," 731: None,\n"," 732: None,\n"," 733: None,\n"," 734: None,\n"," 735: None,\n"," 736: None,\n"," 737: None,\n"," 738: None,\n"," 739: None,\n"," 740: None,\n"," 741: None,\n"," 742: None,\n"," 743: None,\n"," 744: None,\n"," 745: None,\n"," 746: None,\n"," 747: None,\n"," 748: None,\n"," 749: None,\n"," 750: None,\n"," 751: None,\n"," 752: None,\n"," 753: None,\n"," 754: None,\n"," 755: None,\n"," 756: None,\n"," 757: None,\n"," 758: None,\n"," 759: None,\n"," 760: None,\n"," 761: None,\n"," 762: None,\n"," 763: None,\n"," 764: None,\n"," 765: None,\n"," 766: None,\n"," 767: None,\n"," 768: None,\n"," 769: None,\n"," 770: None,\n"," 771: None,\n"," 772: None,\n"," 773: None,\n"," 774: None,\n"," 775: None,\n"," 776: None,\n"," 777: None,\n"," 778: None,\n"," 779: None,\n"," 780: None,\n"," 781: None,\n"," 782: None,\n"," 783: None,\n"," 784: None,\n"," 785: None,\n"," 786: None,\n"," 787: None,\n"," 788: None,\n"," 789: None,\n"," 790: None,\n"," 791: None,\n"," 792: None,\n"," 793: None,\n"," 794: None,\n"," 795: None,\n"," 796: None,\n"," 797: None,\n"," 798: None,\n"," 799: None,\n"," 800: None,\n"," 801: None,\n"," 802: None,\n"," 803: None,\n"," 804: None,\n"," 805: None,\n"," 806: None,\n"," 807: None,\n"," 808: None,\n"," 809: None,\n"," 810: None,\n"," 811: None,\n"," 812: None,\n"," 813: None,\n"," 814: None,\n"," 815: None,\n"," 816: None,\n"," 817: None,\n"," 818: None,\n"," 819: None,\n"," 820: None,\n"," 821: None,\n"," 822: None,\n"," 823: None,\n"," 824: None,\n"," 825: None,\n"," 826: None,\n"," 827: None,\n"," 828: None,\n"," 829: None,\n"," 830: None,\n"," 831: None,\n"," 832: None,\n"," 833: None,\n"," 834: None,\n"," 835: None,\n"," 836: None,\n"," 837: None,\n"," 838: None,\n"," 839: None,\n"," 840: None,\n"," 841: None,\n"," 842: None,\n"," 843: None,\n"," 844: None,\n"," 845: None,\n"," 846: None,\n"," 847: None,\n"," 848: None,\n"," 849: None,\n"," 850: None,\n"," 851: None,\n"," 852: None,\n"," 853: None,\n"," 854: None,\n"," 855: None,\n"," 856: None,\n"," 857: None,\n"," 858: None,\n"," 859: None,\n"," 860: None,\n"," 861: None,\n"," 862: None,\n"," 863: None,\n"," 864: None,\n"," 865: None,\n"," 866: None,\n"," 867: None,\n"," 868: None,\n"," 869: None,\n"," 870: None,\n"," 871: None,\n"," 872: None,\n"," 873: None,\n"," 874: None,\n"," 875: None,\n"," 876: None,\n"," 877: None,\n"," 878: None,\n"," 879: None,\n"," 880: None,\n"," 881: None,\n"," 882: None,\n"," 883: None,\n"," 884: None,\n"," 885: None,\n"," 886: None,\n"," 887: None,\n"," 888: None,\n"," 889: None,\n"," 890: None,\n"," 891: None,\n"," 892: None,\n"," 893: None,\n"," 894: None,\n"," 895: None,\n"," 896: None,\n"," 897: None,\n"," 898: None,\n"," 899: None,\n"," 900: None,\n"," 901: None,\n"," 902: None,\n"," 903: None,\n"," 904: None,\n"," 905: None,\n"," 906: None,\n"," 907: None,\n"," 908: None,\n"," 909: None,\n"," 910: None,\n"," 911: None,\n"," 912: None,\n"," 913: None,\n"," 914: None,\n"," 915: None,\n"," 916: None,\n"," 917: None,\n"," 918: None,\n"," 919: None,\n"," 920: None,\n"," 921: None,\n"," 922: None,\n"," 923: None,\n"," 924: None,\n"," 925: None,\n"," 926: None,\n"," 927: None,\n"," 928: None,\n"," 929: None,\n"," 930: None,\n"," 931: None,\n"," 932: None,\n"," 933: None,\n"," 934: None,\n"," 935: None,\n"," 936: None,\n"," 937: None,\n"," 938: None,\n"," 939: None,\n"," 940: None,\n"," 941: None,\n"," 942: None,\n"," 943: None,\n"," 944: None,\n"," 945: None,\n"," 946: None,\n"," 947: None,\n"," 948: None,\n"," 949: None,\n"," 950: None,\n"," 951: None,\n"," 952: None,\n"," 953: None,\n"," 954: None,\n"," 955: None,\n"," 956: None,\n"," 957: None,\n"," 958: None,\n"," 959: None,\n"," 960: None,\n"," 961: None,\n"," 962: None,\n"," 963: None,\n"," 964: None,\n"," 965: None,\n"," 966: None,\n"," 967: None,\n"," 968: None,\n"," 969: None,\n"," 970: None,\n"," 971: None,\n"," 972: None,\n"," 973: None,\n"," 974: None,\n"," 975: None,\n"," 976: None,\n"," 977: None,\n"," 978: None,\n"," 979: None,\n"," 980: None,\n"," 981: None,\n"," 982: None,\n"," 983: None,\n"," 984: None,\n"," 985: None,\n"," 986: None,\n"," 987: None,\n"," 988: None,\n"," 989: None,\n"," 990: None,\n"," 991: None,\n"," 992: None,\n"," 993: None,\n"," 994: None,\n"," 995: None,\n"," 996: None,\n"," 997: None,\n"," 998: None,\n"," 999: None,\n"," ...}"]},"metadata":{},"execution_count":51}],"source":["# Dictionary fromkeys methods to create dictionary from iterables, with initial values.\n","import unicodedata\n","import sys\n","cmb_chrs = dict.fromkeys(c for c in range(sys.maxunicode))\n","cmb_chrs"]},{"cell_type":"code","execution_count":52,"metadata":{},"outputs":[{"output_type":"stream","name":"stdout","text":[" The barcelona Open is an annual \n"]}],"source":["# String Translate command\n","s = \"\"\"¢ The barcelona¢ Open ¶is ¶an ¶annual¶\"\"\"\n","table = {ord(\"¢\") : \" \", ord(\"¶\") : \" \"}\n","k = s.translate(table)\n","print(k)"]}],"nbformat":4,"nbformat_minor":2,"metadata":{"language_info":{"codemirror_mode":{"name":"ipython","version":3},"file_extension":".py","mimetype":"text/x-python","name":"python","nbconvert_exporter":"python","pygments_lexer":"ipython3","version":3},"orig_nbformat":2}}