Documentation for a newer release is available. View Latest

Python

Python 3.6

Python 3.6 ຈະເປັນຊຸດ Python 3 ມາດຕະຖານໃນ Fedora 26. ນີ້ແມ່ນການອັບເກຣດຈາກເວີຊັນ 3.5 ທີ່ເຄີຍມີໃນ Fedora 25. ທຸກໆແພັກເກັດທີ່ຂຶ້ນກັບ Python 3 ຕ້ອງໄດ້ຮັບການສ້າງໃໝ່ (rebuilt). ສະຄຣິບ ແລະ ແອັບພລິເຄຊັນ Python 3 ທີ່ຜູ້ໃຊ້ຂຽນເອງ ອາດຈະຕ້ອງໄດ້ມີການປັບປ່ຽນ (porting) ເລັກນ້ອຍ; ແນວໃດກໍຕາມ, Python 3.5 ແມ່ນສາມາດໃຊ້ຮ່ວມກັນໄດ້ກັບ Python 3.6 ເປັນສ່ວນໃຫຍ່.

ຄຸນລັກສະນະໃໝ່ທີ່ໂດດເດັ່ນລວມມີ:

  • Formatted string literals (f-strings): f"This will be evaluated to foo’s value: {foo}"

  • ລຳດັບຂອງອົງປະກອບໃນອາຄິວເມັ້ນ (arguments) **kwargs: keyword ໃນຕອນນີ້ແມ່ນຈະຮັກສາລຳດັບຂອງພວກມັນໄວ້

  • ໂມດູນ secrets ໃໝ່ ໃຫ້ຕົວຊ່ວຍທີ່ສະດວກໃນການສ້າງໂທເຄັນ (token) ທີ່ປອດໄພໃນຮູບແບບຕ່າງໆ

  • ເຄື່ອງໝາຍຂີດກ້ອງ (_) ໃນຕົວເລກ ຊ່ວຍໃຫ້ທ່ານສາມາດແບ່ງຕົວເລກຄົງທີ່ (magic constants) ເພື່ອໃຫ້ອ່ານໄດ້ງ່າຍຂຶ້ນ: 1_000_000

  • ໂປຣໂຕຄໍເສັ້ນທາງລະບົບໄຟລ໌: API ມາດຕະຖານຫຼາຍຕົວ, ລວມທັງ open() ທີ່ມາກັບຕົວເຄື່ອງ, ໃນຕອນນີ້ຮອງຮັບອັອບເຈັກ pathlib.Path ແລະ pathlib.PurePath ແລ້ວ

  • ການປັບປຸງປະສິດທິພາບໃນຫຼາຍໆດ້ານ.

ສຳລັບຂໍ້ມູນລະອຽດເພີ່ມເຕີມ ເບິ່ງໄດ້ທີ່ ບົດຄວາມປະກາດຂອງ Fedora Magazine ຫຼື ບັນທຶກການປ່ອຍເວີຊັນຈາກຕົ້ນສະບັບ. ກະລຸນາສັງເກດເບິ່ງພາກ ການພອດ (Porting) ໄປຫາ Python 3.6, ເຊິ່ງໄດ້ລະບຸຂໍ້ມູນທີ່ສຳຄັນສຳລັບນັກພັດທະນາທີ່ຕ້ອງການປັບປ່ຽນແອັບພລິເຄຊັນ Python 3.5 ຂອງພວກເຂົາ.

Python Classroom Lab

Fedora 26 ໄດ້ນຳເອົາ Python Classroom Lab ໃໝ່ເຂົ້າມາ. ມັນແມ່ນ Fedora ເວີຊັນທີ່ເນັ້ນໃສ່ຄູອາຈານ ແລະ ນັກຮຽນທີ່ຮຽນພາສາຂຽນໂປຣແກຣມ Python. ມັນມີສະພາບແວດລ້ອມທີ່ພ້ອມໃຊ້ງານ ເຊິ່ງປະກອບມີ Python, PyPy 3, virtualenv, tox, git, Jupyter Notebook ແລະ ອື່ນໆ. ມັນມີໃຫ້ເລືອກ 3 ຮູບແບບ: ແບບເດັສທັອບ (Desktop) ທີ່ໃຊ້ GNOME ຫຼື ແບບ headless (ບໍ່ມີໜ້າຈໍ) ສຳລັບ Vagrant ແລະ Docker.

ສຶກສາເພີ່ມເຕີມກ່ຽວກັບ Python Classroom Lab ໄດ້ທີ່ເວັບໄຊ Fedora Labs.

Python 3 C.UTF-8 locale

ສິ່ງທ້າທາຍທີ່ຍັງດຳເນີນຢູ່ພາຍໃນຊຸດ Python 3 ແມ່ນການກຳນົດກົນລະຍຸດເລີ່ມຕົ້ນທີ່ເໝາະສົມ ສຳລັບການຈັດການກັບການສົມມຸດການເຂົ້າລະຫັດຂໍ້ຄວາມ “7-bit ASCII” ທີ່ເກີດຈາກການໃຊ້ C locale ເລີ່ມຕົ້ນໃນປະຈຸບັນ.

ເລີ່ມຈາກ Fedora 26 ເປັນຕົ້ນໄປ, Python ຂອງລະບົບ Fedora ຈະລວມເອົາຄຸນລັກສະນະ locale coercion ຂອງ Python 3.7 ທີ່ກຳລັງຈະມາເຖິງ, ເຊິ່ງໝາຍຄວາມວ່າຊຸດ Python 3 ຈະບັງຄັບປ່ຽນ C locale ໄປເປັນ C.UTF-8 ໂດຍອັດຕະໂນມັດ ດ້ວຍການຕັ້ງຄ່າຕົວປ່ຽນສະພາບແວດລ້ອມ LC_CTYPE (ຖ້າຫາກທັງມັນ ແລະ LC_ALL ຍັງບໍ່ທັນໄດ້ຖືກຕັ້ງຄ່າ) ກ່ອນທີ່ຈະກຳນົດຄ່າ locale ຂອງໂປຣເຊສ. ການຕັ້ງຄ່າ LC_CTYPE ໂດຍອັດຕະໂນມັດແບບນີ້ ໝາຍຄວາມວ່າທັງຕົວແປພາສາຫຼັກ (core interpreter) ແລະ ສ່ວນເສີມພາສາ C ທີ່ຮັບຮູ້ locale (ເຊັ່ນ readline) ຈະຖືວ່າການໃຊ້ UTF-8 ເປັນການເຂົ້າລະຫັດຂໍ້ຄວາມເລີ່ມຕົ້ນ, ແທນທີ່ຈະເປັນ ASCII.

ລາຍລະອຽດທັງໝົດຂອງຄຸນລັກສະນະໃໝ່ນີ້ຂອງ Python ແມ່ນມີຢູ່ໃນ PEP 538 — ການບັງຄັບປ່ຽນ C locale ແບບເກົ່າ ໃຫ້ເປັນແບບທີ່ອີງໃສ່ UTF-8.