Last active
March 3, 2026 15:20
-
-
Save tofran/6d7b05fc4b8d9d5de173bedccfa23ab2 to your computer and use it in GitHub Desktop.
Lista de NIFs Portugueses fictícios mas válidos
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| """ | |
| Gerador de NIFs portugueses de teste válidos. | |
| Formato: [100..999] 000 00 X (onde X é o dígito de controlo) | |
| """ | |
| def calcular_digito_controlo(primeiros_8: str) -> int: | |
| """Calcula o dígito de controlo de um NIF com base nos primeiros 8 dígitos.""" | |
| pesos = [9, 8, 7, 6, 5, 4, 3, 2] | |
| soma = sum(int(d) * p for d, p in zip(primeiros_8, pesos)) | |
| resto = soma % 11 | |
| if resto < 2: | |
| return 0 | |
| return 11 - resto | |
| def gerar_nifs_teste() -> list[str]: | |
| """Gera todos os NIFs de teste válidos de 100000000 a 999000000.""" | |
| nifs = [] | |
| for prefixo in range(100, 1000): | |
| base = f"{prefixo}00000" # primeiros 8 dígitos: [prefixo]00000 0 | |
| # base tem 8 dígitos: prefixo (3) + "00000" (5) = 8 | |
| digito = calcular_digito_controlo(base) | |
| nif = f"{base}{digito}" | |
| nifs.append(nif) | |
| return nifs | |
| if __name__ == "__main__": | |
| nifs = gerar_nifs_teste() | |
| print(f"Total de NIFs gerados: {len(nifs)}") | |
| print(f"Primeiro: {nifs[0]}") | |
| print(f"Último: {nifs[-1]}") | |
| print() | |
| # Exportar para ficheiro | |
| output_file = "nifs_teste.txt" | |
| with open(output_file, "w") as f: | |
| for nif in nifs: | |
| f.write(nif + "\n") | |
| print(f"NIFs exportados para '{output_file}'") |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 100000002 | |
| 101000006 | |
| 102000000 | |
| 103000003 | |
| 104000007 | |
| 105000000 | |
| 106000004 | |
| 107000008 | |
| 108000001 | |
| 109000005 | |
| 110000005 | |
| 111000009 | |
| 112000002 | |
| 113000006 | |
| 114000000 | |
| 115000003 | |
| 116000007 | |
| 117000000 | |
| 118000004 | |
| 119000008 | |
| 120000008 | |
| 121000001 | |
| 122000005 | |
| 123000009 | |
| 124000002 | |
| 125000006 | |
| 126000000 | |
| 127000003 | |
| 128000007 | |
| 129000000 | |
| 130000000 | |
| 131000004 | |
| 132000008 | |
| 133000001 | |
| 134000005 | |
| 135000009 | |
| 136000002 | |
| 137000006 | |
| 138000000 | |
| 139000003 | |
| 140000003 | |
| 141000007 | |
| 142000000 | |
| 143000004 | |
| 144000008 | |
| 145000001 | |
| 146000005 | |
| 147000009 | |
| 148000002 | |
| 149000006 | |
| 150000006 | |
| 151000000 | |
| 152000003 | |
| 153000007 | |
| 154000000 | |
| 155000004 | |
| 156000008 | |
| 157000001 | |
| 158000005 | |
| 159000009 | |
| 160000009 | |
| 161000002 | |
| 162000006 | |
| 163000000 | |
| 164000003 | |
| 165000007 | |
| 166000000 | |
| 167000004 | |
| 168000008 | |
| 169000001 | |
| 170000001 | |
| 171000005 | |
| 172000009 | |
| 173000002 | |
| 174000006 | |
| 175000000 | |
| 176000003 | |
| 177000007 | |
| 178000000 | |
| 179000004 | |
| 180000004 | |
| 181000008 | |
| 182000001 | |
| 183000005 | |
| 184000009 | |
| 185000002 | |
| 186000006 | |
| 187000000 | |
| 188000003 | |
| 189000007 | |
| 190000007 | |
| 191000000 | |
| 192000004 | |
| 193000008 | |
| 194000001 | |
| 195000005 | |
| 196000009 | |
| 197000002 | |
| 198000006 | |
| 199000000 | |
| 200000004 | |
| 201000008 | |
| 202000001 | |
| 203000005 | |
| 204000009 | |
| 205000002 | |
| 206000006 | |
| 207000000 | |
| 208000003 | |
| 209000007 | |
| 210000007 | |
| 211000000 | |
| 212000004 | |
| 213000008 | |
| 214000001 | |
| 215000005 | |
| 216000009 | |
| 217000002 | |
| 218000006 | |
| 219000000 | |
| 220000000 | |
| 221000003 | |
| 222000007 | |
| 223000000 | |
| 224000004 | |
| 225000008 | |
| 226000001 | |
| 227000005 | |
| 228000009 | |
| 229000002 | |
| 230000002 | |
| 231000006 | |
| 232000000 | |
| 233000003 | |
| 234000007 | |
| 235000000 | |
| 236000004 | |
| 237000008 | |
| 238000001 | |
| 239000005 | |
| 240000005 | |
| 241000009 | |
| 242000002 | |
| 243000006 | |
| 244000000 | |
| 245000003 | |
| 246000007 | |
| 247000000 | |
| 248000004 | |
| 249000008 | |
| 250000008 | |
| 251000001 | |
| 252000005 | |
| 253000009 | |
| 254000002 | |
| 255000006 | |
| 256000000 | |
| 257000003 | |
| 258000007 | |
| 259000000 | |
| 260000000 | |
| 261000004 | |
| 262000008 | |
| 263000001 | |
| 264000005 | |
| 265000009 | |
| 266000002 | |
| 267000006 | |
| 268000000 | |
| 269000003 | |
| 270000003 | |
| 271000007 | |
| 272000000 | |
| 273000004 | |
| 274000008 | |
| 275000001 | |
| 276000005 | |
| 277000009 | |
| 278000002 | |
| 279000006 | |
| 280000006 | |
| 281000000 | |
| 282000003 | |
| 283000007 | |
| 284000000 | |
| 285000004 | |
| 286000008 | |
| 287000001 | |
| 288000005 | |
| 289000009 | |
| 290000009 | |
| 291000002 | |
| 292000006 | |
| 293000000 | |
| 294000003 | |
| 295000007 | |
| 296000000 | |
| 297000004 | |
| 298000008 | |
| 299000001 | |
| 300000006 | |
| 301000000 | |
| 302000003 | |
| 303000007 | |
| 304000000 | |
| 305000004 | |
| 306000008 | |
| 307000001 | |
| 308000005 | |
| 309000009 | |
| 310000009 | |
| 311000002 | |
| 312000006 | |
| 313000000 | |
| 314000003 | |
| 315000007 | |
| 316000000 | |
| 317000004 | |
| 318000008 | |
| 319000001 | |
| 320000001 | |
| 321000005 | |
| 322000009 | |
| 323000002 | |
| 324000006 | |
| 325000000 | |
| 326000003 | |
| 327000007 | |
| 328000000 | |
| 329000004 | |
| 330000004 | |
| 331000008 | |
| 332000001 | |
| 333000005 | |
| 334000009 | |
| 335000002 | |
| 336000006 | |
| 337000000 | |
| 338000003 | |
| 339000007 | |
| 340000007 | |
| 341000000 | |
| 342000004 | |
| 343000008 | |
| 344000001 | |
| 345000005 | |
| 346000009 | |
| 347000002 | |
| 348000006 | |
| 349000000 | |
| 350000000 | |
| 351000003 | |
| 352000007 | |
| 353000000 | |
| 354000004 | |
| 355000008 | |
| 356000001 | |
| 357000005 | |
| 358000009 | |
| 359000002 | |
| 360000002 | |
| 361000006 | |
| 362000000 | |
| 363000003 | |
| 364000007 | |
| 365000000 | |
| 366000004 | |
| 367000008 | |
| 368000001 | |
| 369000005 | |
| 370000005 | |
| 371000009 | |
| 372000002 | |
| 373000006 | |
| 374000000 | |
| 375000003 | |
| 376000007 | |
| 377000000 | |
| 378000004 | |
| 379000008 | |
| 380000008 | |
| 381000001 | |
| 382000005 | |
| 383000009 | |
| 384000002 | |
| 385000006 | |
| 386000000 | |
| 387000003 | |
| 388000007 | |
| 389000000 | |
| 390000000 | |
| 391000004 | |
| 392000008 | |
| 393000001 | |
| 394000005 | |
| 395000009 | |
| 396000002 | |
| 397000006 | |
| 398000000 | |
| 399000003 | |
| 400000008 | |
| 401000001 | |
| 402000005 | |
| 403000009 | |
| 404000002 | |
| 405000006 | |
| 406000000 | |
| 407000003 | |
| 408000007 | |
| 409000000 | |
| 410000000 | |
| 411000004 | |
| 412000008 | |
| 413000001 | |
| 414000005 | |
| 415000009 | |
| 416000002 | |
| 417000006 | |
| 418000000 | |
| 419000003 | |
| 420000003 | |
| 421000007 | |
| 422000000 | |
| 423000004 | |
| 424000008 | |
| 425000001 | |
| 426000005 | |
| 427000009 | |
| 428000002 | |
| 429000006 | |
| 430000006 | |
| 431000000 | |
| 432000003 | |
| 433000007 | |
| 434000000 | |
| 435000004 | |
| 436000008 | |
| 437000001 | |
| 438000005 | |
| 439000009 | |
| 440000009 | |
| 441000002 | |
| 442000006 | |
| 443000000 | |
| 444000003 | |
| 445000007 | |
| 446000000 | |
| 447000004 | |
| 448000008 | |
| 449000001 | |
| 450000001 | |
| 451000005 | |
| 452000009 | |
| 453000002 | |
| 454000006 | |
| 455000000 | |
| 456000003 | |
| 457000007 | |
| 458000000 | |
| 459000004 | |
| 460000004 | |
| 461000008 | |
| 462000001 | |
| 463000005 | |
| 464000009 | |
| 465000002 | |
| 466000006 | |
| 467000000 | |
| 468000003 | |
| 469000007 | |
| 470000007 | |
| 471000000 | |
| 472000004 | |
| 473000008 | |
| 474000001 | |
| 475000005 | |
| 476000009 | |
| 477000002 | |
| 478000006 | |
| 479000000 | |
| 480000000 | |
| 481000003 | |
| 482000007 | |
| 483000000 | |
| 484000004 | |
| 485000008 | |
| 486000001 | |
| 487000005 | |
| 488000009 | |
| 489000002 | |
| 490000002 | |
| 491000006 | |
| 492000000 | |
| 493000003 | |
| 494000007 | |
| 495000000 | |
| 496000004 | |
| 497000008 | |
| 498000001 | |
| 499000005 | |
| 500000000 | |
| 501000003 | |
| 502000007 | |
| 503000000 | |
| 504000004 | |
| 505000008 | |
| 506000001 | |
| 507000005 | |
| 508000009 | |
| 509000002 | |
| 510000002 | |
| 511000006 | |
| 512000000 | |
| 513000003 | |
| 514000007 | |
| 515000000 | |
| 516000004 | |
| 517000008 | |
| 518000001 | |
| 519000005 | |
| 520000005 | |
| 521000009 | |
| 522000002 | |
| 523000006 | |
| 524000000 | |
| 525000003 | |
| 526000007 | |
| 527000000 | |
| 528000004 | |
| 529000008 | |
| 530000008 | |
| 531000001 | |
| 532000005 | |
| 533000009 | |
| 534000002 | |
| 535000006 | |
| 536000000 | |
| 537000003 | |
| 538000007 | |
| 539000000 | |
| 540000000 | |
| 541000004 | |
| 542000008 | |
| 543000001 | |
| 544000005 | |
| 545000009 | |
| 546000002 | |
| 547000006 | |
| 548000000 | |
| 549000003 | |
| 550000003 | |
| 551000007 | |
| 552000000 | |
| 553000004 | |
| 554000008 | |
| 555000001 | |
| 556000005 | |
| 557000009 | |
| 558000002 | |
| 559000006 | |
| 560000006 | |
| 561000000 | |
| 562000003 | |
| 563000007 | |
| 564000000 | |
| 565000004 | |
| 566000008 | |
| 567000001 | |
| 568000005 | |
| 569000009 | |
| 570000009 | |
| 571000002 | |
| 572000006 | |
| 573000000 | |
| 574000003 | |
| 575000007 | |
| 576000000 | |
| 577000004 | |
| 578000008 | |
| 579000001 | |
| 580000001 | |
| 581000005 | |
| 582000009 | |
| 583000002 | |
| 584000006 | |
| 585000000 | |
| 586000003 | |
| 587000007 | |
| 588000000 | |
| 589000004 | |
| 590000004 | |
| 591000008 | |
| 592000001 | |
| 593000005 | |
| 594000009 | |
| 595000002 | |
| 596000006 | |
| 597000000 | |
| 598000003 | |
| 599000007 | |
| 600000001 | |
| 601000005 | |
| 602000009 | |
| 603000002 | |
| 604000006 | |
| 605000000 | |
| 606000003 | |
| 607000007 | |
| 608000000 | |
| 609000004 | |
| 610000004 | |
| 611000008 | |
| 612000001 | |
| 613000005 | |
| 614000009 | |
| 615000002 | |
| 616000006 | |
| 617000000 | |
| 618000003 | |
| 619000007 | |
| 620000007 | |
| 621000000 | |
| 622000004 | |
| 623000008 | |
| 624000001 | |
| 625000005 | |
| 626000009 | |
| 627000002 | |
| 628000006 | |
| 629000000 | |
| 630000000 | |
| 631000003 | |
| 632000007 | |
| 633000000 | |
| 634000004 | |
| 635000008 | |
| 636000001 | |
| 637000005 | |
| 638000009 | |
| 639000002 | |
| 640000002 | |
| 641000006 | |
| 642000000 | |
| 643000003 | |
| 644000007 | |
| 645000000 | |
| 646000004 | |
| 647000008 | |
| 648000001 | |
| 649000005 | |
| 650000005 | |
| 651000009 | |
| 652000002 | |
| 653000006 | |
| 654000000 | |
| 655000003 | |
| 656000007 | |
| 657000000 | |
| 658000004 | |
| 659000008 | |
| 660000008 | |
| 661000001 | |
| 662000005 | |
| 663000009 | |
| 664000002 | |
| 665000006 | |
| 666000000 | |
| 667000003 | |
| 668000007 | |
| 669000000 | |
| 670000000 | |
| 671000004 | |
| 672000008 | |
| 673000001 | |
| 674000005 | |
| 675000009 | |
| 676000002 | |
| 677000006 | |
| 678000000 | |
| 679000003 | |
| 680000003 | |
| 681000007 | |
| 682000000 | |
| 683000004 | |
| 684000008 | |
| 685000001 | |
| 686000005 | |
| 687000009 | |
| 688000002 | |
| 689000006 | |
| 690000006 | |
| 691000000 | |
| 692000003 | |
| 693000007 | |
| 694000000 | |
| 695000004 | |
| 696000008 | |
| 697000001 | |
| 698000005 | |
| 699000009 | |
| 700000003 | |
| 701000007 | |
| 702000000 | |
| 703000004 | |
| 704000008 | |
| 705000001 | |
| 706000005 | |
| 707000009 | |
| 708000002 | |
| 709000006 | |
| 710000006 | |
| 711000000 | |
| 712000003 | |
| 713000007 | |
| 714000000 | |
| 715000004 | |
| 716000008 | |
| 717000001 | |
| 718000005 | |
| 719000009 | |
| 720000009 | |
| 721000002 | |
| 722000006 | |
| 723000000 | |
| 724000003 | |
| 725000007 | |
| 726000000 | |
| 727000004 | |
| 728000008 | |
| 729000001 | |
| 730000001 | |
| 731000005 | |
| 732000009 | |
| 733000002 | |
| 734000006 | |
| 735000000 | |
| 736000003 | |
| 737000007 | |
| 738000000 | |
| 739000004 | |
| 740000004 | |
| 741000008 | |
| 742000001 | |
| 743000005 | |
| 744000009 | |
| 745000002 | |
| 746000006 | |
| 747000000 | |
| 748000003 | |
| 749000007 | |
| 750000007 | |
| 751000000 | |
| 752000004 | |
| 753000008 | |
| 754000001 | |
| 755000005 | |
| 756000009 | |
| 757000002 | |
| 758000006 | |
| 759000000 | |
| 760000000 | |
| 761000003 | |
| 762000007 | |
| 763000000 | |
| 764000004 | |
| 765000008 | |
| 766000001 | |
| 767000005 | |
| 768000009 | |
| 769000002 | |
| 770000002 | |
| 771000006 | |
| 772000000 | |
| 773000003 | |
| 774000007 | |
| 775000000 | |
| 776000004 | |
| 777000008 | |
| 778000001 | |
| 779000005 | |
| 780000005 | |
| 781000009 | |
| 782000002 | |
| 783000006 | |
| 784000000 | |
| 785000003 | |
| 786000007 | |
| 787000000 | |
| 788000004 | |
| 789000008 | |
| 790000008 | |
| 791000001 | |
| 792000005 | |
| 793000009 | |
| 794000002 | |
| 795000006 | |
| 796000000 | |
| 797000003 | |
| 798000007 | |
| 799000000 | |
| 800000005 | |
| 801000009 | |
| 802000002 | |
| 803000006 | |
| 804000000 | |
| 805000003 | |
| 806000007 | |
| 807000000 | |
| 808000004 | |
| 809000008 | |
| 810000008 | |
| 811000001 | |
| 812000005 | |
| 813000009 | |
| 814000002 | |
| 815000006 | |
| 816000000 | |
| 817000003 | |
| 818000007 | |
| 819000000 | |
| 820000000 | |
| 821000004 | |
| 822000008 | |
| 823000001 | |
| 824000005 | |
| 825000009 | |
| 826000002 | |
| 827000006 | |
| 828000000 | |
| 829000003 | |
| 830000003 | |
| 831000007 | |
| 832000000 | |
| 833000004 | |
| 834000008 | |
| 835000001 | |
| 836000005 | |
| 837000009 | |
| 838000002 | |
| 839000006 | |
| 840000006 | |
| 841000000 | |
| 842000003 | |
| 843000007 | |
| 844000000 | |
| 845000004 | |
| 846000008 | |
| 847000001 | |
| 848000005 | |
| 849000009 | |
| 850000009 | |
| 851000002 | |
| 852000006 | |
| 853000000 | |
| 854000003 | |
| 855000007 | |
| 856000000 | |
| 857000004 | |
| 858000008 | |
| 859000001 | |
| 860000001 | |
| 861000005 | |
| 862000009 | |
| 863000002 | |
| 864000006 | |
| 865000000 | |
| 866000003 | |
| 867000007 | |
| 868000000 | |
| 869000004 | |
| 870000004 | |
| 871000008 | |
| 872000001 | |
| 873000005 | |
| 874000009 | |
| 875000002 | |
| 876000006 | |
| 877000000 | |
| 878000003 | |
| 879000007 | |
| 880000007 | |
| 881000000 | |
| 882000004 | |
| 883000008 | |
| 884000001 | |
| 885000005 | |
| 886000009 | |
| 887000002 | |
| 888000006 | |
| 889000000 | |
| 890000000 | |
| 891000003 | |
| 892000007 | |
| 893000000 | |
| 894000004 | |
| 895000008 | |
| 896000001 | |
| 897000005 | |
| 898000009 | |
| 899000002 | |
| 900000007 | |
| 901000000 | |
| 902000004 | |
| 903000008 | |
| 904000001 | |
| 905000005 | |
| 906000009 | |
| 907000002 | |
| 908000006 | |
| 909000000 | |
| 910000000 | |
| 911000003 | |
| 912000007 | |
| 913000000 | |
| 914000004 | |
| 915000008 | |
| 916000001 | |
| 917000005 | |
| 918000009 | |
| 919000002 | |
| 920000002 | |
| 921000006 | |
| 922000000 | |
| 923000003 | |
| 924000007 | |
| 925000000 | |
| 926000004 | |
| 927000008 | |
| 928000001 | |
| 929000005 | |
| 930000005 | |
| 931000009 | |
| 932000002 | |
| 933000006 | |
| 934000000 | |
| 935000003 | |
| 936000007 | |
| 937000000 | |
| 938000004 | |
| 939000008 | |
| 940000008 | |
| 941000001 | |
| 942000005 | |
| 943000009 | |
| 944000002 | |
| 945000006 | |
| 946000000 | |
| 947000003 | |
| 948000007 | |
| 949000000 | |
| 950000000 | |
| 951000004 | |
| 952000008 | |
| 953000001 | |
| 954000005 | |
| 955000009 | |
| 956000002 | |
| 957000006 | |
| 958000000 | |
| 959000003 | |
| 960000003 | |
| 961000007 | |
| 962000000 | |
| 963000004 | |
| 964000008 | |
| 965000001 | |
| 966000005 | |
| 967000009 | |
| 968000002 | |
| 969000006 | |
| 970000006 | |
| 971000000 | |
| 972000003 | |
| 973000007 | |
| 974000000 | |
| 975000004 | |
| 976000008 | |
| 977000001 | |
| 978000005 | |
| 979000009 | |
| 980000009 | |
| 981000002 | |
| 982000006 | |
| 983000000 | |
| 984000003 | |
| 985000007 | |
| 986000000 | |
| 987000004 | |
| 988000008 | |
| 989000001 | |
| 990000001 | |
| 991000005 | |
| 992000009 | |
| 993000002 | |
| 994000006 | |
| 995000000 | |
| 996000003 | |
| 997000007 | |
| 998000000 | |
| 999000004 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment