అత్యంత ఆసక్తికరమైన ఆవిష్కరణలు:
- అసైన్మెంట్ వ్యక్తీకరణ:
కొత్త := ఆపరేటర్ ఎక్స్ప్రెషన్స్లోని వేరియబుల్స్కు విలువలను కేటాయించడానికి మిమ్మల్ని అనుమతిస్తుంది. ఉదాహరణకి:
అయితే (n:= len(a)) > 10:
ప్రింట్(f"జాబితా చాలా పొడవుగా ఉంది ({n} మూలకాలు, అంచనా <= 10)") - స్థాన-మాత్రమే వాదనలు:
పేరు పెట్టబడిన ఆర్గ్యుమెంట్ సింటాక్స్ ద్వారా ఏ ఫంక్షన్ పారామీటర్లను పాస్ చేయవచ్చో మరియు ఏది చేయలేదో మీరు ఇప్పుడు పేర్కొనవచ్చు. ఉదాహరణ:
def f(a, b, /, c, d, *, e, f):
ప్రింట్ (a, b, c, d, e, f)f(10, 20, 30, d=40, e=50, f=60) # సరే
f(10, b=20, c=30, d=40, e=50, f=60) # ఎర్రర్, `b` అనే ఆర్గ్యుమెంట్ కాకూడదు
f(10, 20, 30, 40, 50, f=60) # ఎర్రర్, `e` తప్పనిసరిగా పేరు పెట్టబడిన ఆర్గ్యుమెంట్ అయి ఉండాలిఈ మార్పు డెవలపర్లకు ఫంక్షన్ ఆర్గ్యుమెంట్ పేర్లలో మార్పుల నుండి వారి APIల వినియోగదారులను రక్షించడానికి ఒక మార్గాన్ని అందిస్తుంది.
- మద్దతు f-స్ట్రింగ్స్ = స్వీయ-డాక్యుమెంటింగ్ వ్యక్తీకరణలు మరియు డీబగ్గింగ్ కోసం:
డీబగ్గింగ్/లాగింగ్ సందేశాలను సులభతరం చేయడానికి చక్కెర జోడించబడింది.
n = 42
ప్రింట్(f'హలో వరల్డ్ {n=}.')
# "హలో వరల్డ్ n=42" అని ప్రింట్ చేస్తుంది. - చివరగా బ్లాక్లో కొనసాగింపు కీవర్డ్ పరిష్కరించబడింది (ఇది ఇంతకు ముందు పని చేయలేదు).
ఇతర:
- మీరు డిఫాల్ట్ __pycache__కి బదులుగా బైట్కోడ్ కాష్కి మార్గాన్ని స్పష్టంగా పేర్కొనవచ్చు.
- డీబగ్ మరియు విడుదల బిల్డ్లు ఒకే ABIని ఉపయోగిస్తాయి.
మూలం: linux.org.ru