ສໍາລັບ loop ໃນ Python

For loop ໃນ Python ມີລັກສະນະທີ່ແຕກຕ່າງກັນຫຼາຍກ່ວາພາສາການຂຽນໂປຼແກຼມອື່ນໆ. ຂ້າ​ພະ​ເຈົ້າ​ປ່ອຍ​ໃຫ້​ທ່ານ​ສິ່ງ​ທີ່​ຂ້າ​ພະ​ເຈົ້າ​ໄດ້​ຮຽນ​ຮູ້​ເພື່ອ​ໃຫ້​ໄດ້​ຮັບ​ຫຼາຍ​ທີ່​ສຸດ​ຈາກ​ຫນຶ່ງ​ໃນ loops ທີ່​ໃຊ້​ຫຼາຍ​ທີ່​ສຸດ​.

ໃນ Python ມັນມີຈຸດປະສົງເພື່ອ iterate ຜ່ານວັດຖຸທີ່ບໍ່ສາມາດປ່ຽນແປງໄດ້, ບໍ່ວ່າຈະເປັນບັນຊີລາຍຊື່, ວັດຖຸ, ຫຼືອົງປະກອບອື່ນ.

ໂຄງສ້າງຕໍ່ໄປນີ້ແມ່ນ

h2=[ 'Valencia', 'Castellón', 'Alicante']

for j in h2:
   instructions

ທີ່ນີ້ h2 ເປັນອົງປະກອບທີ່ບໍ່ສາມາດປ່ຽນແປງໄດ້ເຊັ່ນ: ບັນຊີລາຍຊື່ h2=[ 'Valencia', 'Castellón', 'Alicante']. loop ຈະມີ 3 ຊ້ຳ, ໃນຄັ້ງທຳອິດ j=Valencia ໃນອັນທີສອງ ຕົວແປ j=Castellón.

ແລະດ້ວຍນີ້ພວກເຮົາສາມາດກໍານົດຄໍາແນະນໍາທີ່ພວກເຮົາຕ້ອງການ, ຈື່ຈໍາການຫຍໍ້ຫນ້າຢູ່ສະເຫມີ, ບາງສິ່ງບາງຢ່າງທີ່ສໍາຄັນໃນ Python ແລະຫຼາຍຄົນບໍ່ສົນໃຈ, ໄດ້ຮັບຄວາມຜິດພາດໃນລະຫັດ.

Iterate ສໍາລັບ loop ເປັນຈໍານວນທີ່ແນ່ນອນຂອງເວລາ.

ຖ້າ​ຫາກ​ວ່າ​ພວກ​ເຮົາ​ຕ້ອງ​ການ​ໃຫ້​ມັນ​ເຮັດ​ເລ​ື້ມ​ຄືນ​ຈໍາ​ນວນ​ທີ່​ແນ່​ນອນ​ຕາມ​ທີ່​ພວກ​ເຮົາ​ສາ​ມາດ​ເຮັດ​ໄດ້​ໃນ C++ ພວກ​ເຮົາ​ຈະ​ມີ​ການ​ນໍາ​ໃຊ້ range(). ເພື່ອ iterate 10 ເທື່ອ, ພວກເຮົາຈະໃຊ້ a

for element in Range(9):
    instructions

ພວກເຮົາໃສ່ 9 ແລະບໍ່ແມ່ນ 10 ເພາະວ່າ Range ເລີ່ມຕົ້ນຈາກ 0, ດັ່ງນັ້ນຈາກ 0 ຫາ 9 ມີ 10 iterations ຫຼື turns ຂອງ loop.

ການຮູ້ Range() ຊ່ວຍໃຫ້ພວກເຮົາ, ແທນທີ່ຈະໃສ່ຕົວເລກພາຍໃນ, ວາງຕົວແປ, ເຊິ່ງພວກເຮົາຈະຄວບຄຸມຫຼາຍ.

var = 10
for element in Range(var):
    instructions

ຟັງຊັນ Range ມີຫຼາຍທາງເລືອກ, ຂ້ອຍຈະເວົ້າກ່ຽວກັບມັນໃນບົດຄວາມອື່ນ, ເພື່ອບໍ່ໃຫ້ປະສົມເນື້ອຫາແລະພັດທະນາມັນຫຼາຍເທົ່າທີ່ເປັນໄປໄດ້.

ມີຫຼາຍສາມາດເຮັດໄດ້ເພື່ອຄວບຄຸມການໄຫຼເຂົ້າຂອງ for loop.

ແຍກ ແລະສືບຕໍ່ຖະແຫຼງການ

ມີ 2 ລັກສະນະທີ່ເປັນປະໂຫຍດຫຼາຍທີ່ອະນຸຍາດໃຫ້ພວກເຮົາເຮັດສໍາລັບ loop ທີ່ເປັນປະໂຫຍດຫຼາຍ, fon the break ແລະສືບຕໍ່. ປົກກະຕິແລ້ວພວກມັນຖືກນໍາໃຊ້ກັບເງື່ອນໄຂ, ຖ້າ, ກວດເບິ່ງວ່າບາງສິ່ງບາງຢ່າງແມ່ນຄວາມຈິງ.

ພວກເຂົາເຈົ້າເຮັດວຽກຢູ່ໃນ loops ອື່ນໆ, ແລະມີຄໍາຖະແຫຼງທີ່ຫນ້າສົນໃຈອີກອັນຫນຶ່ງແມ່ນ pass, ເຊິ່ງເປັນຄໍາຖະແຫຼງທີ່ຖືກປະຕິບັດແຕ່ບໍ່ເຮັດຫຍັງແລະເຫມາະສົມສໍາລັບເວລາທີ່ພວກເຮົາຕ້ອງການກໍານົດໂຄງສ້າງທີ່ຕ້ອງການຄໍາສັ່ງແຕ່ພວກເຮົາຕ້ອງການໃຫ້ພວກເຂົາຕໍ່ມາ (ຄໍາເຫັນແມ່ນ ບໍ່ເປັນປະໂຫຍດສໍາລັບການນີ້)

ພັກຜ່ອນ

ດ້ວຍການຢຸດພວກເຮົາສາມາດອອກຈາກ loop ໄດ້ທຸກເວລາ. ຕາມທີ່ທ່ານຈິນຕະນາການເປັນປະໂຫຍດຫຼາຍ. ມັນເປັນຄວາມຈິງທີ່ວ່າມີໂຄງສ້າງອື່ນໆເຊັ່ນ: ໃນຂະນະທີ່,

numeros = [1, 2, 4, 3, 5, 8, 6]
for n in numeros:
    if n == 3:
        break
else:
    print('No se encontró el número 3')

ສືບຕໍ່ການ

ມັນເຮັດໃຫ້ພວກເຮົາໄປຫາອົງປະກອບຕໍ່ໄປໃນ loop.

numeros = [1, 2, 4, 3, 5, 8, 6]
for n in numeros:
    if n == 3:
        continue
else:
    print('No se encontró el número 3')

https://j2logo.com/bucle-for-en-python/

ສໍາລັບ ... ອື່ນ

ມີໂຄງສ້າງທີ່ມາຈາກ For, ເຊິ່ງແມ່ນສໍາລັບ ... ອື່ນ

datos = [1, 2, 3, 4, 5]
for n in datos:
    if n == 2:
        break
else:
    print('No hay 2')

ໂຄງສ້າງນີ້ເກີດຂື້ນຫຼັງຈາກທີ່ພວກເຂົາເຫັນວ່າມັນເປັນສິ່ງຈໍາເປັນແລະປະຊາຊົນຈໍານວນຫຼາຍກໍາລັງໃຊ້ວິທີທາງເລືອກເພື່ອບັນລຸເປົ້າຫມາຍດັ່ງກ່າວ. ດັ່ງນັ້ນ, ພວກເຂົາຊ່ວຍປະຊາຊົນແລະໄດ້ຮັບລະຫັດທີ່ສາມາດອ່ານໄດ້ຫຼາຍຂຶ້ນ

for_in iterable

ຂ້ອຍໄດ້ເຫັນສິ່ງນີ້ໃນບາງໂປແກຼມເຖິງແມ່ນວ່າຂ້ອຍບໍ່ເຄີຍໃຊ້ມັນ.

ໃນເວລາທີ່ພວກເຮົາກໍາລັງ iterating ວັດຖຸ, ບັນຊີລາຍຊື່, ວັດຈະນານຸກົມ, ແລະອື່ນໆ, ແຕ່ເນື້ອໃນຂອງອົງປະກອບເຫຼົ່ານັ້ນບໍ່ສົນໃຈພວກເຮົາ, ພວກເຮົາສາມາດຊີ້ບອກມັນດ້ວຍ _

ຕົວຢ່າງ:

ພວກເຮົາຕ້ອງການນັບອົງປະກອບຂອງບັນຊີລາຍຊື່ແຕ່ພວກເຮົາບໍ່ສົນໃຈສິ່ງທີ່ມັນມີ, ພວກເຮົາພຽງແຕ່ຕ້ອງການຄວາມຍາວຂອງມັນ.

h2=[ 'Valencia', 'Castellón', 'Alicante']
count = 0
for _ in h2:
    cont += 1

ໃນຫຼາຍໆສະຖານທີ່ພວກເຂົາແນະນໍາໃຫ້ບໍ່ລ່ວງລະເມີດການປະຕິບັດນີ້. ຂ້າພະເຈົ້າກໍ່ບໍ່ຮູ້ຂໍ້ດີທີ່ມັນນໍາສະເຫນີ, ມັນໄວກວ່າບໍ?

looping ກັບຄືນໄປບ່ອນ

ກັບຄືນໄປບ່ອນສໍາລັບ loop. ເພື່ອ iterate ໃນຕອນທ້າຍເຖິງຕອນຕົ້ນ

ມັນໃຊ້ຟັງຊັນ reversed() ທີ່ນໍາສະເຫນີໃນ python 3

h2=[ 'Valencia', 'Castellón', 'Alicante']

for j in reversed(h2):
    print (j)

Looping ກັບສອງຕົວຊີ້ວັດ, ມູນຄ່າຂອງ iterable ແລະດັດຊະນີ

ດ້ວຍ enumerate() ພວກເຮົາສາມາດເຮັດວຽກກັບຕົວຊີ້ວັດຂອງການເກັບກໍາ. ເນື່ອງຈາກວ່າຫຼາຍຄັ້ງ, ນອກເຫນືອຈາກມູນຄ່າຂອງວັດຖຸທີ່ເຮັດໄດ້ເອງ, ພວກເຮົາມີຄວາມສົນໃຈໃນດັດຊະນີຂອງມັນ.

h2=[ 'Valencia', 'Castellón', 'Alicante']

for j, h in enumerate(h2):
    print j, '-->', h2[i] 

ຊ້ຳ​ບໍ່​ໜຳ​ຫຼາຍ​ກວ່າ 2 ລາຍ​ການ

ອີກທາງເລືອກຫນຶ່ງທີ່ຫນ້າສົນໃຈຫຼາຍແມ່ນ zip() ທີ່ຈະເຮັດໃຫ້ການເຮັດວຽກຂອງພວກເຮົາງ່າຍຂຶ້ນແລະຈະເຮັດໃຫ້ລະຫັດຂອງພວກເຮົາງ່າຍແລະອ່ານໄດ້ຫຼາຍຂຶ້ນ.

h2=[ 'Valencia', 'Castellón', 'Alicante']
cod=[100, 200, 300]

for j, h in zip(h2, cod):
    print h2, '-->', cod 

ໃນ Python 2.x izip() ຖືກນໍາໃຊ້ເພື່ອເພີ່ມປະສິດທິພາບການເຮັດວຽກນີ້, ແຕ່ໃນ Python 3 izip ແມ່ນ zip()

Looping ໃນລໍາດັບ

Iterate ຕາມລໍາດັບໂດຍມູນຄ່າຂອງວັດຖຸແທນທີ່ຈະເປັນດັດຊະນີຂອງມັນ. sorted() ຖືກນໍາໃຊ້

colors = ['rojo', 'amarillo', 'verde']

for color in sorted(colors):
    print color

ແລະຖ້າພວກເຮົາຕ້ອງການເຮັດມັນຄືນ

colors = ['rojo', 'amarillo', 'verde']

for color in sorted(colors, reverse=True):
    print color

ລຳດັບການຈັດຮຽງແບບກຳນົດເອງ

colors = ['rojo', 'amarillo', 'verde']

for color in sorted(colors, key=len):
    print color

ຄ່າ Sentinel ໃນສໍາລັບ loop

ຄ່າ sentinel ແມ່ນຄ່າທີ່ເຮັດໃຫ້ loop ສິ້ນສຸດລົງ. ມັນມັກຈະຖືກນໍາສະເຫນີໃນຮອບໃນຂະນະທີ່, ແຕ່ Raymond Hettinger ສະແດງໃຫ້ພວກເຮົາເຫັນວິທີການນໍາໃຊ້ມັນດ້ວຍ for, ເຊິ່ງໄວກວ່າ.

blocks = []
for block in iter(partial(f.read, 32), ''):
    blocks.append(block)
    print (block)

ວັດຈະນານຸກົມ Traverse ກັບ for

ວັດຈະນານຸກົມແມ່ນເຄື່ອງມືທີ່ຈໍາເປັນສໍາລັບການສະແດງອອກຄວາມສໍາພັນແລະການສ້າງກຸ່ມ.

ທ່ານສາມາດຜ່ານວັດຈະນານຸກົມໃນແບບດັ້ງເດີມກັບ for, ແຕ່ວ່າຈະບໍ່ສົ່ງຄືນຂໍ້ມູນທັງຫມົດ, ພວກເຮົາຈະບໍ່ສາມາດເຮັດວຽກກັບຄ່າແລະຕົວຊີ້ວັດເຊັ່ນນັ້ນ, ຖ້າພວກເຮົາບໍ່ເລີ່ມເພີ່ມຕົວນັບແລະອື່ນໆ. ອົງປະກອບ.

d = {'casa': 'azul', 'coche': 'rojo', 'hombre': 'verde'}

for k in d.keys():
    if k.startswith('r'):
        del d[k]

ດ້ວຍວິທີນີ້, ນອກເຫນືອຈາກການເບິ່ງອົງປະກອບ, ພວກເຮົາສາມາດດັດແປງວັດຈະນານຸກົມໂດຍການປ່ຽນອົງປະກອບຫຼືລຶບພວກມັນ, ໃນເວລາດຽວກັນກັບ for loop ແມ່ນ iterated.

d.keys() ໂທຫາການໂຕ້ຖຽງແລະເຮັດສໍາເນົາທີ່ມັນເກັບຮັກສາໄວ້ໃນບັນຊີລາຍຊື່ທີ່ພວກເຮົາສາມາດດັດແປງໄດ້.

ເພື່ອໃຫ້ໄດ້ຮັບດັດສະນີແລະຄຸນຄ່າແທນທີ່ຈະເປັນບາງສິ່ງບາງຢ່າງແບບດັ້ງເດີມແລະນັ້ນແມ່ນສິ່ງທໍາອິດທີ່ເຂົ້າມາໃນໃຈສໍາລັບຜູ້ທີ່ເລີ່ມຕົ້ນການຂຽນໂປຼແກຼມ.

for k in d:
    print k, '-->', d[k]

ພວກເຮົາຈະໃຊ້ທາງເລືອກທີ່ໄວກວ່ານີ້

for k, v in d.items():
    print k, '-->', v

Ititems() ກວ່າລາຍການ()

ສົນທະນາກ່ຽວກັບ Loops ໃນ Python ໂດຍ Raymond Hettinger

ມັນເປັນວິດີໂອທີ່ເກົ່າແກ່ແຕ່ເປັນຕົວຢ່າງຫຼາຍ, ບ່ອນທີ່ໃນ 20 ນາທີທໍາອິດ Raymond Hettinger ສອນພວກເຮົາຄວາມເປັນໄປໄດ້ທີ່ແຕກຕ່າງກັນຂອງ loops ໃນ Python ແລະໃຫ້ພວກເຮົາຕົວຢ່າງຂອງວິທີການທີ່ເຂົາເຈົ້າໄດ້ຫັນປ່ຽນໂຄງສ້າງການນໍາໃຊ້ຢ່າງກວ້າງຂວາງໂດຍປະຊາຊົນເຂົ້າໄປໃນຫນ້າທີ່, ເພື່ອເຮັດໃຫ້ loop ສາມາດອ່ານໄດ້ຫຼາຍແລະງ່າຍດາຍ. .ລະຫັດ.

Leave a comment