பைதான் 3.8 நிரலாக்க மொழியின் வெளியீடு

ஒன்றரை வருட வளர்ச்சிக்குப் பிறகு வழங்கப்பட்டது முக்கிய நிரலாக்க மொழி வெளியீடு பைதான் 3.8. பைதான் 3.8 கிளைக்கான திருத்தமான புதுப்பிப்புகள் திட்டமிடப்பட்டது 18 மாதங்களுக்குள் வெளியிட வேண்டும். அக்டோபர் 5 வரை 2024 ஆண்டுகளுக்கு முக்கியமான பாதிப்புகள் சரி செய்யப்படும். 3.8 கிளைக்கான திருத்தமான புதுப்பிப்புகள் ஒவ்வொரு இரண்டு மாதங்களுக்கும் வெளியிடப்படும், பைதான் 3.8.1 இன் முதல் திருத்த வெளியீடு டிசம்பரில் திட்டமிடப்பட்டுள்ளது.

சேர்க்கப்பட்டது மத்தியில் புதுமைகள்:

  • ஆதரவு சிக்கலான வெளிப்பாடுகளுக்குள் பணி செயல்பாடுகள். புதிய “:=” ஆபரேட்டருடன், மற்ற வெளிப்பாடுகளுக்குள் மதிப்பு ஒதுக்கீட்டு செயல்பாடுகளைச் செய்ய முடியும், எடுத்துக்காட்டாக, நிபந்தனை அறிக்கைகளில் இரட்டை செயல்பாட்டு அழைப்புகளைத் தவிர்க்க மற்றும் லூப்களை வரையறுக்கும்போது:

    என்றால் (n:= len(a)) > 10:
    ...

    போது (தொகுதி := f.read(256)) != ":
    ...

  • ஆதரவு செயல்பாட்டு வாதங்களைக் குறிப்பிடுவதற்கான புதிய தொடரியல். ஒரு செயல்பாட்டு வரையறையின் போது வாதங்களை கணக்கிடும்போது, ​​ஒதுக்கக்கூடிய வாதங்களில் இருந்து, செயல்பாடு அழைப்பின் போது மதிப்புகள் கணக்கிடப்படும் வரிசையின் அடிப்படையில் மட்டுமே மதிப்புகளை ஒதுக்கக்கூடிய மதிப்புகளை தனித்தனி வாதங்களுக்கு நீங்கள் இப்போது "/" குறிப்பிடலாம். எந்த வரிசையிலும் (மாறி=மதிப்பு தொடரியல்) ). நடைமுறைப் பக்கத்தில், புதிய அம்சமானது பைத்தானில் உள்ள செயல்பாடுகளை C இல் இருக்கும் செயல்பாடுகளின் நடத்தையை முழுமையாகப் பின்பற்ற அனுமதிக்கிறது, மேலும் குறிப்பிட்ட பெயர்களுடன் பிணைப்பதைத் தவிர்க்கவும், எடுத்துக்காட்டாக, அளவுருவின் பெயரை எதிர்காலத்தில் மாற்ற திட்டமிடப்பட்டால்.

    "/" கொடியானது முன்னர் சேர்க்கப்பட்ட "*" கொடியை நிறைவு செய்கிறது, "மாறி=மதிப்பு" வடிவத்தில் ஒரு ஒதுக்கீட்டை மட்டுமே பயன்படுத்தக்கூடிய மாறிகளைப் பிரிக்கிறது. எடுத்துக்காட்டாக, "def f(a, b, /, c, d, *, e, f) செயல்பாட்டில் "a" மற்றும் "b" மாறிகள் மதிப்புகள் பட்டியலிடப்பட்ட வரிசையில் மட்டுமே ஒதுக்கப்படும். ,
    மாறிகள் “e” மற்றும் “f”, “variable=value” மூலம் மட்டுமே, மற்றும் “c” மற்றும் “d” மாறிகள் பின்வரும் வழிகளில் ஏதேனும் ஒன்றில்:

    f(10, 20, 30, 40, e=50, f=60)
    f(10, 20, s=30, d=40, e=50, f=60)

  • சேர்க்கப்பட்டது புதிய C API
    பைதான் துவக்க அளவுருக்களை உள்ளமைக்க, அனைத்தின் மீதும் முழுமையான கட்டுப்பாட்டை அனுமதிக்கிறது கட்டமைப்பு மற்றும் மேம்பட்ட பிழை கையாளும் வசதிகளை வழங்குகிறது. முன்மொழியப்பட்ட API ஆனது பிற C பயன்பாடுகளில் பைதான் மொழிபெயர்ப்பாளர் செயல்பாட்டை உட்பொதிப்பதை எளிதாக்குகிறது;

  • செயல்படுத்தப்பட்டது C மொழியில் எழுதப்பட்ட பொருட்களை விரைவாக அணுகுவதற்கான புதிய Vectorcall நெறிமுறை. CPython 3.8 இல், Vectorcall க்கான அணுகல் இன்னும் உள் பயன்பாட்டிற்கு மட்டுப்படுத்தப்பட்டுள்ளது; பொதுவில் அணுகக்கூடிய APIகளின் வகைக்கு மாற்றுவது CPython 3.9 இல் திட்டமிடப்பட்டுள்ளது;
  • சேர்க்கப்பட்டது ரன்டைம் தணிக்கை ஹூக்ஸுக்கு அழைப்புகள், இது பைத்தானில் பயன்பாடுகள் மற்றும் கட்டமைப்பை வழங்குகிறது, இது ஸ்கிரிப்ட்டின் முன்னேற்றம் பற்றிய குறைந்த அளவிலான தகவல்களை அணுகுவதன் மூலம் செய்யப்படும் செயல்களைத் தணிக்கை செய்யலாம் (உதாரணமாக, நீங்கள் தொகுதிகளின் இறக்குமதியைக் கண்காணிக்கலாம், கோப்புகளைத் திறக்கலாம், ஒரு தடயத்தைப் பயன்படுத்தி, நெட்வொர்க் சாக்கெட்டுகளை அணுகுதல், exec, eval மற்றும் run_mod மூலம் குறியீட்டை இயக்குதல்);
  • தொகுதியில் ஊறுகாய் பாதுகாப்பானது பிக்கிள் 5 நெறிமுறைக்கான ஆதரவு, பொருள்களை வரிசைப்படுத்துவதற்கும், சீரமைப்பதற்கும் பயன்படுத்தப்படுகிறது. மல்டி-கோர் மற்றும் மல்டி-நோட் உள்ளமைவுகளில் உள்ள பைதான் செயல்முறைகளுக்கு இடையே அதிக அளவிலான தரவு பரிமாற்றத்தை மேம்படுத்துவதற்கு Pickle உங்களை அனுமதிக்கிறது. நெறிமுறையின் ஐந்தாவது பதிப்பு, அவுட்-ஆஃப்-பேண்ட் டிரான்ஸ்மிஷன் பயன்முறையைச் சேர்ப்பதில் குறிப்பிடத்தக்கது, இதில் பிரதான ஊறுகாய் ஸ்ட்ரீமில் இருந்து தரவுகளை தனித்தனியாக அனுப்ப முடியும்.
  • முன்னிருப்பாக, பிக்கிள் நெறிமுறையின் நான்காவது பதிப்பு செயல்படுத்தப்படுகிறது, இது, முன்னரே வழங்கிய மூன்றாம் பதிப்புடன் ஒப்பிடும்போது, ​​அதிக செயல்திறன் மற்றும் பரிமாற்றப்பட்ட தரவின் அளவைக் குறைக்க அனுமதிக்கிறது;
  • தொகுதியில் தட்டச்சு பல புதிய அம்சங்கள் அறிமுகப்படுத்தப்பட்டுள்ளன:
    • Класс TypedDict விசைகளுடன் தொடர்புடைய தரவுகளுக்கு ("TypedDict('Point2D', x=int, y=int, label=str)") வகைத் தகவல் வெளிப்படையாகக் குறிப்பிடப்படும் துணை அணிகளுக்கு.
    • வகை நிலையுருவில், இது ஒரு அளவுருவை மட்டுப்படுத்த அல்லது சில முன் வரையறுக்கப்பட்ட மதிப்புகளுக்கு மதிப்பை வழங்க உங்களை அனுமதிக்கிறது (“லிட்டரல்['இணைக்கப்பட்டது', 'துண்டிக்கப்பட்டது']").
    • வடிவமைப்பு"இறுதி", இது மாறிகள், செயல்பாடுகள், முறைகள் மற்றும் மாற்ற முடியாத அல்லது மறுஒதுக்கீடு செய்ய முடியாத வகுப்புகளின் மதிப்புகளை வரையறுக்க உதவுகிறது ("pi: Final[float] = 3.1415926536").
  • பைட்கோடுடன் தொகுக்கப்பட்ட கோப்புகளுக்கான தற்காலிக சேமிப்பை ஒதுக்கும் திறனைச் சேர்த்தது, ஒரு தனி FS ட்ரீயில் சேமிக்கப்பட்டு, குறியீட்டுடன் கோப்பகங்களிலிருந்து பிரிக்கப்பட்டது. பைட்கோடு மூலம் கோப்புகளைச் சேமிப்பதற்கான பாதை மாறி வழியாக அமைக்கப்பட்டுள்ளது பைதான்பைகாசெபிரிக்ஸ் அல்லது விருப்பம் "-X pycache_prefix";
  • செயல்படுத்தப்பட்டது வெளியீட்டிற்கு ஒத்த ABI ஐப் பயன்படுத்தும் பைத்தானின் பிழைத்திருத்த உருவாக்கங்களை உருவாக்கும் திறன், இது SI மொழியில் எழுதப்பட்ட நீட்டிப்புகளை ஏற்றுவதற்கு உங்களை அனுமதிக்கிறது, நிலையான வெளியீடுகளுக்காக தொகுக்கப்பட்ட பிழைத்திருத்த உருவாக்கங்களில்;
  • f-strings ('f' உடன் முன்னொட்டாக வடிவமைக்கப்பட்ட எழுத்துகள்) = ஆபரேட்டருக்கு ஆதரவை வழங்குகிறது (எடுத்துக்காட்டாக, "f'{expr=}'"), இது எளிதாக பிழைத்திருத்தத்திற்கு ஒரு வெளிப்பாட்டை உரையாக மாற்ற அனுமதிக்கிறது. உதாரணத்திற்கு:

    ››› பயனர் = 'eric_idle'
    ››› உறுப்பினர்_முதல் = தேதி(1975, 7, 31)
    ››› f'{user=} {member_since=}'
    "user='eric_idle' member_since=datetime.date(1975, 7, 31)"

  • வெளிப்பாடு "தொடர்ந்து» ஒரு தொகுதிக்குள் பயன்படுத்த அனுமதிக்கப்படுகிறது இறுதியாக;
  • புதிய தொகுதி சேர்க்கப்பட்டது multiprocessing.shared_memory, மல்டிபிராசஸ் உள்ளமைவுகளில் பகிரப்பட்ட நினைவகப் பிரிவுகளைப் பயன்படுத்த அனுமதிக்கிறது;
  • விண்டோஸ் இயங்குதளத்தில், அசின்சியோ செயல்படுத்தல் வகுப்பைப் பயன்படுத்த நகர்த்தப்பட்டது ProactorEventLoop;
  • புதிய ஆப்ஜெக்ட் குறியீடு கேச்சிங் பொறிமுறையைப் பயன்படுத்துவதால், LOAD_GLOBAL அறிவுறுத்தலின் செயல்திறன் தோராயமாக 40% அதிகரித்துள்ளது.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்