Çözüldü Phyton Kodunun Düzgün Çalışmasını Nasıl Sağlarım?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

alpersamur3

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

Evet biliyorum çok dağınık kullanıyorum. Random'u önceden çıkarttım orayı vermek istemedim. Burada kod doğrulamada ki kod her seferinde değiştiğinden kod doğrulamayı doğru yapsan da kod doğrulama başarısız diyor. Bunu nasıl düzeltebilirim?
 
Çözüm
Sanırım doğrulama sistemi yapmaya çalışıyor. Yani human verification ama izlediği dersleri tam kavrayamadığından ne yapacağını bilmiyor. Aslında istediği programın bir örneğini yapacaktım ama dersi öğrenemediği için bir şey anlamazdı herhalde.
Bununla alakalı bir hata almıyorum benim sorduğum doğrulama kısmındaki hata.
Hatta bunun hataya sebep olduğunu sanmıyorum !!
Size de kursu baştan izlemenizi öneririm. Hızlı hızlı izlemeyin, sindire sindire izleyin. Ben de şu an Python öğreniyorum ve PyQt5'e gelmem yaklaşık 1 ayımı aldı.
Print içinde tek tırnak kullanılabiliyor mu bilmiyorum ama kullanma. Tek karakter için kullan.
If açınca düzgün bir girintileme yap ki program ne yapmaya çalıştığını anlasın. Python'da küme parantezleri yok. Ona dikkat etmen gerekiyor.
Kodu atarken ne yapmaya çalıştığını, nerede hata yaşadığını da söylesen güzel olur.

import random demeden random kullanmaya çalışmışsın.
Dosyayı açmadan içine veri yazmaya çalışıyorsun.
sleep() fonksiyonu için import time yazman gerekiyor.
kod diye bir tuple tanımlamışsın. Sonra da kod.remove() ile içinden veri çıkarmaya çalışıyorsun. Tuple'lar müdahale edilemez elemanlardır.

999'a kadar giden bir liste lazımsa kod = list(range(1,1000)) yazman yeterli.

klncblgr dosyasını tanımlaman gerekiyor. Bu arada kodu gir diyor ama girince de başarısız diyor.
Değişkenlerin isminde Türkçe karakter kullanmışsınız.
Python bunu destekliyor.
 
kod=range(1,1000) yapsanız daha kolay olmaz mı? tek tek yazdınız mı 1'den 999'a kadar?
 
O zaman listeden silerken hata veriyor.
Şu an da hata veriyor. Köşeli parantezle tanımlarsan liste olur. Diğer türlü tuple. Range fonksiyonu tuple döndürür. Typecasting ile liste yapabilirsin. Burada örneğini gösterdim.

Dile hakim olmadığın aşikar. Ufak hatalarını sormuyorsun. Lütfen yapmaya çalıştığın şeyi anlat ki yardım edebilelim.
999'a kadar giden bir liste lazımsa kod = list(range(1,1000)) yazman yeterli.
random.sample kullanmışsın. Bu bir liste döndürür. Ama kullanıcıya tek eleman gir diyorsun.
Girdi almışsın ama Python'da girdiler string olarak alınır. Integer'a cast etmeliydin.


Şu an kodu bu hale getirdim. Senin için yeterli mi? Daha ne olsun istiyorsun?
Python:
import random
import time

print("E-Posta adresi giriniz.")
Eposta=input("")
print("Kullanıcı Adı belirleyin.")
kullanıcıadı=input("")
print("Lütfen Şifre giriniz.")
şifre=input("")
kod = list(range(1,999))

kodusec=random.choice(kod)
#str(kodusec)
#str(kod)
print(kodusec)
koduver=int(input("Yukarıdaki kodu giriniz!!"))
if koduver == kodusec:
    print("Kod doğrulama başarılı bu kodu kaybetmeyeceğiniz bir yerde saklayınız!!")
    kod.remove(koduver)
else :
    print("Kod doğrulama başarısız!!Uygulamayı yeniden başlatınız.")
    time.sleep(5)
    exit()
#klncblglr.write(' ')
#klncblglr.write(Eposta+' ')
#klncblglr.write(kullanıcıadı+' ')
#klncblglr.write(şifre+'\n')
#klncblglr.close()
 
Öncelikle import ile çıkarılacak her şeyi çıkarttım ama kodların hepsini vermediğimden gözükmüyor.Aynı şekilde klncblglr dosyasını yukarıda tanımladım.Dosyayı da aynı şekilde yukarıda açtım ama vermedim.Tuple'yi söylediğin için teşekkürler. Fark etmemişim.Sonra asıl sorunum 'Bu arada kodu gir diyor ama girince de başarısız diyor.' burada söylediğin gibi bu .Buna nasıl bir çözüm bulabilirim ??
 
Sanırım doğrulama sistemi yapmaya çalışıyor. Yani human verification ama izlediği dersleri tam kavrayamadığından ne yapacağını bilmiyor. Aslında istediği programın bir örneğini yapacaktım ama dersi öğrenemediği için bir şey anlamazdı herhalde.
Bununla alakalı bir hata almıyorum benim sorduğum doğrulama kısmındaki hata.
Hatta bunun hataya sebep olduğunu sanmıyorum !!
Size de kursu baştan izlemenizi öneririm. Hızlı hızlı izlemeyin, sindire sindire izleyin. Ben de şu an Python öğreniyorum ve PyQt5'e gelmem yaklaşık 1 ayımı aldı.
 
Çözüm
Öncelikle import ile çıkarılacak her şeyi çıkarttım
Çıkartmamışsın. Hala random fonkisyonları vardı. Choice'a çevirdim.
Sleep de koymuşsun bunun için import time gerekiyor.
Buna nasıl bir çözüm bulabilirim?
Girdi alırken cast ederek. Random'dan gelen de bir liste idi. Liste ile integer'ı karşılaştırıyordun. Bu düzeltilince bile girdiden string geldiği için hatalı sonuç olacaktı. int(input...) olan kısmı görebilirsin attığım kodda. Sayı alacakken onu kullan.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…