লোকেরা পাইথন 3 ব্যবহার করতে সংকোচ করে কেন?


220

পাইথন 3 ডিসেম্বর ২০০৮ এ প্রকাশিত হয়েছিল। তখন থেকে অনেক সময় কেটে গেছে তবে আজও অনেক বিকাশকারী পাইথন 3 ব্যবহার করতে দ্বিধা বোধ করে Even

অবশ্যই, পাইথন 3 এর পাইথন 2 এর কিছু অসুবিধাগুলি রয়েছে এবং কিছু লোকের পিছনে-সামঞ্জস্যের উপর নির্ভর করা দরকার। তবে পাইথন 3 এখন প্রায় বেশিরভাগ প্রকল্পের পক্ষে পাইথন 3 দিয়ে স্যুইচ করতে বা শুরু করার পক্ষে যথেষ্ট পর্যায়ে নেই?

দুটি প্রতিযোগিতামূলক সংস্করণ থাকার অনেকগুলি ত্রুটি রয়েছে; দুটি শাখা বজায় রাখা দরকার, শিক্ষার্থীদের জন্য বিভ্রান্তি ইত্যাদি। তাহলে পাইথন 3 তে স্যুইচিং করা নিয়ে পাইথন সম্প্রদায় জুড়ে এত দ্বিধা কেন?


3
পাইথন 2 ব্যবহার করা সত্যিই কি এত নতুন প্রকল্প রয়েছে? নাকি এটি জ্যাঙ্গোর মতো দীর্ঘ-প্রতিষ্ঠিত প্রকল্পগুলি?
কারসন 63000

3
আপনি কিছু আলোচনা / উত্স উদ্ধৃত করতে পারেন?
মাইকেল ইস্টার

12
@ মিশেল ইস্টার - তার দরকার নেই। শুধু এসওতে পাইথন ট্যাগটি পরীক্ষা করুন; "সেখানে 2.x শিখুন, 3.x এখনও প্রস্তুত নয়" এমন মতামত রয়েছে up
রুক


7
@ ততক্ষণে, এটি এখন পাইথন 3 সুপার
পাওয়ারের

উত্তর:


248

মনে রাখবেন যে আমি আর এই উত্তরটি আপডেট করছি না। আমার ব্যক্তিগত সাইটে http://python-notes.curiousefficiency.org/en/latest/python3/questions_and_answers.html এ পাইথন 3 কিউ এবং এ রয়েছে

পূর্ববর্তী উত্তর:

(স্থিতি আপডেট, সেপ্টেম্বর ২০১২)

পাইথন 3.0.০ প্রকাশের সময় আমরা (অর্থাত পাইথন কোর বিকাশকারীরা) পূর্বাভাস দিয়েছিলাম যে ২.x সিরিজের উপরে নতুন প্রকল্পগুলির জন্য "ডিফল্ট" পছন্দ হয়ে উঠতে ৩.x এর জন্য প্রায় ৫ বছর সময় লাগবে। সেই ভবিষ্যদ্বাণীটি হ'ল কেন 2.7 রিলিজের জন্য পরিকল্পিত রক্ষণাবেক্ষণ সময় এত দীর্ঘ is

মূল পাইথন 3.0.০ প্রকাশে দুর্বল আইও পারফরম্যান্সের সাথে কিছু সমালোচনামূলক সমস্যা দেখা দিয়েছে যা এটি বেশিরভাগ ব্যবহারিক উদ্দেশ্যে কার্যকরভাবে অকেজো করে তুলেছে, তাই ২০০৯ সালের শেষের দিকে পাইথন ৩.১ প্রকাশের সময়রেখাটি শুরু করা আরও বোধগম্য। আইও এর পারফরম্যান্স সমস্যাগুলিও 3.0.z রক্ষণাবেক্ষণ প্রকাশের কারণ নয়: এর কোনও কারণ নেই যে 3.0 কে 3.1 এ উন্নীত করার সাথে থাকতে হবে)।

লেখার সময় (সেপ্টেম্বর ২০১২), এর অর্থ আমরা বর্তমানে রূপান্তর প্রক্রিয়াতে 3 বছরেরও বেশি সময় পেরিয়েছি এবং সেই ভবিষ্যদ্বাণীটি এখনও ট্র্যাকের মধ্যে রয়েছে বলে মনে হচ্ছে।

পাইথন 3 কোড টাইপ করা লোকেরা নিয়মিতভাবে printফাংশন হওয়ার মতো সিনট্যাকটিক পরিবর্তন দ্বারা দংশন করে , এটি আসলে লাইব্রেরি পোর্টিংয়ের কোনও ঝামেলা নয় কারণ স্বয়ংক্রিয় 2to3রূপান্তর সরঞ্জামটি এটি বেশ সুখে পরিচালনা করে।

অনুশীলনের সবচেয়ে বড় সমস্যাটি আসলে একটি শব্দার্থক সমস্যা: পাইথন 3 আপনাকে পাইথন 2 এর মতোভাবে টেক্সট এনকোডিংগুলি দিয়ে দ্রুত এবং আলগাভাবে খেলতে দেয় না। আপনি করতে হবে: এই পাইথন 2 ওভার এর সর্বশ্রেষ্ঠ সুবিধা, কিন্তু porting সবচেয়ে বড় বাধা উভয় ঠিক (যেহেতু 2.x, যে কোড অনেক চুপটি সঙ্গে ভুল তথ্য উত্পাদিত সঠিকভাবে কাজ করার পোর্ট পেতে আপনার ইউনিকোড হ্যান্ডলিং সমস্যা নন-এএসসিআইআই ইনপুট, কাজের ছাপ দেয়, বিশেষত এমন পরিবেশে যেখানে অ-এএসসিআইআই ডেটা অস্বাভাবিক হয়)।

এমনকি পাইথন 3.0.০ এবং ৩.১ এর স্ট্যান্ডার্ড লাইব্রেরিতে এখনও ইউনিকোড হ্যান্ডলিংয়ের সমস্যা রয়েছে যার ফলে প্রচুর লাইব্রেরি (বিশেষত ওয়েব পরিষেবাদির সাথে সম্পর্কিত) পোর্ট করা কঠিন হয়ে পড়ে।

৩.২ জ্যাঙ্গোর মতো লাইব্রেরি এবং ফ্রেমওয়ার্কের জন্য আরও ভাল লক্ষ্য সরবরাহ করে, এই সমস্যার অনেকগুলি সমাধান করেছে। ৩.২ এছাড়াও wsgiref3.x এর প্রথম ওয়েব সংস্করণ (ওয়েব সার্ভার এবং পাইথনে লিখিত ওয়েব অ্যাপ্লিকেশনগুলির মধ্যে যোগাযোগের জন্য ব্যবহৃত মূল স্ট্যান্ডার্ড) নিয়ে এসেছিল , যা ওয়েব স্পেসে গ্রহণের জন্য প্রয়োজনীয় পূর্বশর্ত ছিল।

নুমপি এবং সায়পাইয়ের মতো মূল নির্ভরতা এখন পোর্ট করা হয়েছে, ইনস্টলেশন ও নির্ভরতা পরিচালনার সরঞ্জামগুলির মতো zc.buildout, pipএবং virtualenv3.x-র জন্য উপলব্ধ, পিরামিড 1.3 রিলিজ পাইথন 3.2 সমর্থন করে, আগত জ্যাঙ্গো 1.5 রিলিজটিতে পরীক্ষামূলক পাইথন 3 সমর্থন, এবং 12.0 প্রকাশের অন্তর্ভুক্ত রয়েছে ট্যুইস্টেড নেটওয়ার্কিং ফ্রেমওয়ার্কটি পাইথন 3 সামঞ্জস্যপূর্ণ সংস্করণ তৈরির পথ প্রশস্ত করার জন্য পাইথন 2.5 এর সমর্থন বাদ দেয়।

পাইথন 3 সুসংগত লাইব্রেরি এবং ফ্রেমওয়ার্কগুলিতে অগ্রগতির পাশাপাশি, জনপ্রিয় জেআইটি-সংকলিত পাইপাই ইন্টারপ্রেটার বাস্তবায়ন সক্রিয়ভাবে পাইথন 3 সাপোর্টে কাজ করছে।

মাইগ্রেশন প্রক্রিয়া পরিচালনার সরঞ্জামগুলিও উল্লেখযোগ্যভাবে উন্নত হয়েছে। 2to3সিপিথনের অংশ হিসাবে প্রদত্ত সরঞ্জামের পাশাপাশি (যা এখন ২.x সিরিজের জন্য সমর্থন বজায় রাখার প্রয়োজন নেই এমন অ্যাপ্লিকেশনগুলির এককালীন রূপান্তরগুলির জন্য সবচেয়ে উপযুক্ত হিসাবে বিবেচিত), এছাড়াও রয়েছে python-modernize, যা 2to3লক্ষ্যমাত্রার জন্য অবকাঠামো ব্যবহার করে পাইথন 2 এবং পাইথন 3 (বৃহত্তর) সাধারণ উপসেটটি 3 এই সরঞ্জামটি একটি একক কোড বেস তৈরি করে যা sixসামঞ্জস্য গ্রন্থাগারের সহায়তায় পাইথন ২.6+ এবং পাইথন ৩.২+ উভয় দিকে চলবে will পাইথন 3.3 রিলিজ এছাড়াও "কোলাহল" এক প্রধান কারণ ঘটিয়েছে যখন বিদ্যমান ইউনিকোড সচেতন অ্যাপ্লিকেশনের মাইগ্রেট: পাইথন 3.3 আবার স্ট্রিং লিটারেল জন্য 'U' প্রিফিক্স সমর্থন (এটা আসলে না কিপাইথন 3 কিছু - এটা শুধু অনবধানতাবশত এড়াতে পাইথন 3 মাইগ্রেট উপার্জন পুনরুদ্ধার করা হয়েছে কঠিন ইতিমধ্যে যে ব্যবহারকারী সঠিকভাবে তাদের টেক্সট এবং পাইথন 2 বাইনারি লিটারেল) আলাদা ছিল।

সুতরাং আমরা কীভাবে জিনিসগুলি এগিয়ে চলছে তার সাথে খুব খুশি - আমাদের মূল সময় ফ্রেমে যেতে এখনও প্রায় 2 বছর বাকি রয়েছে এবং পুরো পাইথন ইকোসিস্টেমের মাধ্যমে পরিবর্তনগুলি খুব সুন্দরভাবে ফুটে উঠছে।

যেহেতু প্রচুর প্রকল্পগুলি তাদের পাইথন প্যাকেজ সূচক মেটাডেটা সঠিকভাবে সংশোধন করে না, এবং কম সক্রিয় রক্ষণাবেক্ষণকারীদের কিছু প্রকল্প পাইথন 3 সমর্থন যুক্ত করার জন্য প্রস্তুত করা হয়েছে, খাঁটি স্বয়ংক্রিয় পাইপআই স্ক্যানাররা এখনও পাইথন 3 লাইব্রেরির অবস্থা সম্পর্কে অত্যধিক নেতিবাচক দৃষ্টিভঙ্গি দেয় সমর্থন।

পাইপআই-তে পাইথন 3 সমর্থন স্তরের তথ্য পাওয়ার জন্য একটি পছন্দসই বিকল্প হ'ল http://py3ksupport.appspot.com/

এই তালিকাটি ব্যক্তিগতভাবে ব্রেট ক্যানন (দীর্ঘকালীন পাইথন কোর বিকাশকারী) দ্বারা ভুল প্রকল্পের মেটাডেটা হিসাবে চিহ্নিত করার জন্য পাইথন 3 সমর্থন যা সোর্স কন্ট্রোল সরঞ্জামগুলিতে রয়েছে তবে এখনও অফিশিয়াল রিলিজে নেই, এবং যে প্রকল্পগুলিতে আরও আপ টু ডেট রয়েছে বা বিকল্পগুলি যা পাইথন 3 সমর্থন করে many অনেক ক্ষেত্রে, পাইথন 3 এ এখনও পাওয়া যায় নি গ্রন্থাগারগুলি মূল নির্ভরতা এবং / অথবা অন্যান্য প্রকল্পগুলিতে পাইথন 3 সমর্থনের অভাব ব্যবহারকারীর চাহিদাকে কমিয়ে দেয় (যেমন মূল জ্যাঙ্গো কাঠামোটি একবার উপলভ্য হলে পাইথন 3, দক্ষিণ এবং জ্যাঙ্গো-সেলারি সম্পর্কিত সরঞ্জামগুলি পাইথন 3 সমর্থন যুক্ত করার সম্ভাবনা বেশি, এবং পিরামিড এবং জ্যাঙ্গো উভয় ক্ষেত্রে পাইথন 3 সমর্থন উপলব্ধির ফলে এটি জেনেন্টের মতো অন্যান্য সরঞ্জামগুলিতে পাইথন 3 সমর্থন কার্যকর করা সম্ভব হবে)।

Http://getpython3.com এ সাইটটিতে পাইথন 3 এর জন্য বই এবং অন্যান্য সংস্থানগুলির জন্য কয়েকটি দুর্দান্ত লিঙ্ক রয়েছে, এমন কয়েকটি মূল গ্রন্থাগার এবং ফ্রেমওয়ার্কগুলি সনাক্ত করে যা ইতিমধ্যে পাইথন 3 সমর্থন করে এবং বিকাশকারীরা কীভাবে আর্থিক সহায়তা চাইতে পারে সে সম্পর্কে কিছু তথ্য সরবরাহ করে পাইথন 3 তে মূল প্রকল্পগুলি বন্দরতে পিএসএফ।

নতুন প্রকল্পের জন্য পাইথন সংস্করণ চয়ন করার সময় বিবেচনা করার জন্য বিষয়গুলির জন্য সম্প্রদায় উইকি পৃষ্ঠাটি হ'ল আরেকটি ভাল সংস্থান: http://wiki.python.org/moin/Python2orPython3


3
গত 18 মাসে অগ্রগতির উপর ভিত্তি করে আপডেট হয়েছে (এবং স্পষ্টভাবে উল্লেখ করেছেন যে 3.0 এ প্রথম
অবাস্তব আইওর

1
একটি ডিগ্রি পর্যন্ত (যেমন আমরা জানতাম যে এটি ২.6-তে আইও সাবসিস্টেমের তুলনায় উল্লেখযোগ্যভাবে ধীর ছিল) তবে সাধারণ ব্যবহারের উপর প্রভাব আমাদের প্রত্যাশার চেয়ে অনেক খারাপ ছিল (আমাদের আইও বেনমার্কগুলি তখন থেকেই স্পষ্টভাবে উন্নত হয়েছে, সুতরাং এমন কিছু হওয়ার সম্ভাবনা নেই) আজ পাঠানো হয়েছে)
ncoghlan

6
2015 সালের প্রস্তাবিত সময়সীমাটি এতটা উত্সাহী বলে মনে হচ্ছে না: |
জেতাঃ

1
যেভাবে আমি এটি দেখতে পাচ্ছি (এবং এর জন্য কেউ কেউ আমাকে ঝুঁকির উপরে পুড়িয়ে ফেলা হবে) তা হ'ল এনকোডিংয়ের সম্মুখভাগে পাই 3 পাইথনের জেনটি "বাস্তববাদকে বিশুদ্ধতা দেয়" পয়েন্টে লঙ্ঘন করেছে (এবং এখনও এই জিনিসগুলি চলছে) : পাই 3 এনকোডিং-খাঁটি। পাই 2 এনকোডিং-প্র্যাকমেটিক ছিল।
জার্জেন এ। এয়ারহার্ড

2
পাই 3 এখনও এনকোডিংগুলি সম্পর্কে বাস্তবসম্মত (অন্যথায় আমাদের কাছে সারোগেটেস্কেপ থাকত না), আমরা কেবলমাত্র অনেক * নিক্স ব্যবহারকারীদের মুখোমুখি হয়েছি যা উইন্ডোজ,। নেট এবং জেভিএমের মতো প্ল্যাটফর্মে যেভাবে অপারেটিং সিস্টেমের ইন্টারফেসগুলি কাজ করে সে সম্পর্কে শুনতে আগ্রহী নয় ( অ্যান্ড্রয়েড সহ) আমি যে আরও লিখেছি developerblog.redhat.com/2014/09/09/... , প্রধান প্রভাব হয়েছে "ত্রুটি চুপটি পাস না করা উচিত" ফ্রন্ট নামের আমরা আপনার ডেটা নির্ভরশীল বাগ যে কাঠামোগত টাইপ ত্রুটি মধ্যে মোজিবেক উত্পাদিত পরিবর্তিত বাইনারি ডেটা এবং পাঠ্য ডেটা মেশানো সম্পর্কে অভিযোগ
ncoghlan

48

আমি বিশ্বাস করি যে দুটি বিষয় থেকেই প্রচুর দ্বিধা আসে:

  • যদি এটি না ভেঙে যায় তবে এটি ঠিক করবেন না
  • [এক্সওয়াইজেড লাইব্রেরি] আমাদের প্রয়োজনীয় একটি 3.0 বন্দর নেই port

মূল দলটি যেভাবে আচরণ করে তার বেশ কয়েকটি পার্থক্য রয়েছে, এই নথিতে বর্ণিত । কোনও বিবরণ থেকে কোনও ফাংশনে "মুদ্রণ" পরিবর্তন করার মতো সহজ কিছু উদাহরণস্বরূপ, প্রচুর পাইথন ২.x কোডটি ভেঙে ফেলবে - এবং এটি কেবল সহজতম। তারা পুরানো-শৈলীর ক্লাসগুলি পুরোপুরি 3.0 এ পরিত্রাণ পেয়েছে। এগুলি প্রকৃতপক্ষে একেবারে ভিন্ন ভাষা so তাই পুরাতন কোডটি পোর্ট করা এতটা সহজ নয় যতটা ধারণা করা যায়।


2
নির্ভরতা-হ'ল-এ-পোর্ট ইস্যুটিও পুনরাবৃত্ত হয়। যেটি প্রয়োজনীয় স্ট্যান্ডলিবের বাইরের বন্দরে কম বা কোনও নির্ভরতার সাথে বহুল ব্যবহৃত লাইব্রেরিগুলির প্রয়োজন, যা পরে চেইন প্রতিক্রিয়া শুরু করতে পারে।
টনি মায়ার

10
আমি অর্ডারটি স্যুইচ করব আমাদের অনেকগুলি আশেপাশে
বসে

1
@ টনি - সে কারণেই আমি মনে করি এটি 3.0 এর জন্য একটি দুর্দান্ত উত্সাহ যে নম্পি এখন এটির জন্য উপলব্ধ। @ এস.লট - আমার ধারণা 3 টি যদি আপনি চান এমন কিছু প্রস্তাব দেয় তবে এটি নির্ভর করে। সত্যি কথা বলতে, আমি খুব সম্প্রতি 2.5 থেকে 2.7 এ স্থানান্তরিত হয়েছি - সুতরাং আমি সত্যিই সেই লোকদের মধ্যে নেই যারা "সর্বশেষতম এবং সর্বশ্রেষ্ঠ" অনুসরণ করে।
TZHX

1
সাহায্যে পুরাতন কোড পোর্টিং 2to3যেমন নয় হার্ড কিছু লোক ভয়, হয়, যদিও হিসাবে।
এনকোঘ্লান

5
পাইথনকে ডিস্ট্রো (ওএসএক্স, লিনাক্স, ইত্যাদি) -র মধ্যে বান্ডিল করে এমন প্রতিটি ওএস এখনও পাইথন ২-এর কিছু প্রাচীন সংস্করণে আটকে আছে কেন কেউ যখন আপনার কোডটি ব্যঙ্গ না করে আপনার কোড ব্যবহার করতে পারে না তখন পাইথন 3-এর জন্য কেন লিখবেন? তাদের ওএস এর ইন্টার্নাল দিয়ে?
পিঁপড়ের

28

বিদ্যমান বৈশিষ্ট্য সংস্থায় কোনও পরিবর্তন না পেয়ে বিদ্যমান ব্যবসায়ের জন্য সময়, অর্থ এবং প্রচেষ্টা ব্যয় করার কোনও বাধ্যতামূলক কারণ নেই। আমি বলতে চাই পাইথন 2 সিরিজের কোড বেসটি দীর্ঘদিন ধরে এটির স্থিতিশীল, পরীক্ষিত এবং বর্তমানের সমস্ত পণ্য বৈশিষ্ট্য সেট রয়েছে যা ব্যবসায়ে চলছে। কেন কেউ প্যাথন 3 এ স্থানান্তরিত করার জন্য কেবলমাত্র পাইথন 3 সরানোর জন্য সময়, অর্থ এবং প্রচেষ্টা ব্যয় করবে?

মাইগ্রেশন পরবর্তী পোস্টগুলি নিশ্চিত করে যে কোনও প্রতিরোধ ব্যর্থতা নেই এবং সমস্ত মাথাব্যথা অনিবার্য।

নতুন প্রকল্পগুলির জন্য নীতিটি সরল এবং সহজ, এটি সমস্ত নিম্নলিখিত পয়েন্টগুলিতে শুরু হয়:

  1. উবুন্টুর মতো কোনও ডিস্ট্রো কি পাইথন 3 তাদের ডিফল্ট ইনস্টলেশনতে পাঠায়?
  2. পাইথন 3 এর লাইব্রেরি ইকোসিস্টেম কি?
  3. সমস্ত ফ্রেমওয়ার্কগুলি পাইথন 3 ইত্যাদির সাথে সামঞ্জস্যপূর্ণ etc.

এটি আপনার স্বাভাবিক 'নতুন ভাষা চয়ন করা' প্রক্রিয়া। মুরগির ডিমের সমস্যাটি এখানেই আসে, অনেকেই এটি ব্যবহার করে না কারণ অনেকেই এটি ব্যবহার করে না। শেষ পর্যন্ত কেউ এটিকে মোটেও এগিয়ে যাওয়ার মতো বোধ করে না।

পিছনে সামঞ্জস্যতা ভাঙা কখনও ভাল জিনিস হয় না, এর শেষে আপনি সর্বদা ব্যবহারকারীর একটি ভাল শতাংশ শেষ করেন।


14

পাইথন ২.০ প্রকাশিত হওয়ার সময় পাইথন দ্রুত জনপ্রিয়তার সাথে বাড়ছিল। পুরানো সংস্করণগুলির উপর কোনও নির্ভরতা না থাকায় প্রচুর নতুন ব্যবহারকারী ছিলেন যারা প্রাকৃতিকভাবে সর্বশেষতম সংস্করণটি ব্যবহার করেছিলেন। প্রচুর লোক 2.0 কে ডিফল্টরূপে গ্রহণ করে, গ্রন্থাগার বিকাশকারীদের উপর প্রচুর চাপ ছিল etc.

পাইথন 3.0.০ প্রকাশের সময় ইতিমধ্যে পাইথন ২.০ এর উপর নির্ভরশীল প্রচুর সংখ্যক ব্যবহারকারী ছিল এবং তাত্পর্যপূর্ণ বৃদ্ধি (বিদ্যমান ব্যবহারকারীদের সাথে ধ্রুবক ফ্যাক্টর রেখে) অবশ্যই অনির্দিষ্টকাল ধরে টিকতে পারে না।

ব্যক্তিগতভাবে, পাইথন 2 দিনের নতুন বৈশিষ্ট্যগুলি পাইথন 3 সরবরাহিত বৈশিষ্ট্যের চেয়ে অনেক বেশি বাধ্যতামূলক বলে মনে হয়েছিল।

আমি ভাবতাম পাইথন 3 শেষ পর্যন্ত যাইহোক দখল করে নেবে, তবে আমি এখন এতটা নিশ্চিত নই। তবে এই সমস্যাটি কেবল পাইথন নয় this সর্বোপরি, কত লোক সৎভাবে পার্ল 6 ব্যবহার করে? এটি পাইথন 3, আইআইআরসি থেকে মোটামুটি বেশি দীর্ঘ সময় কাটিয়েছে।


3
হ্যালো, আমি এখনও ফোর্টরান using77 ব্যবহার করছি। :) এবং পাইথন 3 এর আসল "বৈশিষ্ট্যগুলি" বেশিরভাগই সামঞ্জস্যতার সমস্যা ছাড়াই 2.6 এবং 2.7 এ ব্যাকপোর্ট করা হয়েছে। পাইথন 3 সত্যই যে অফার করে তা হ'ল "ক্লিনার" সিনট্যাক্স।
TZHX

3
পাইথন 3 এবং পার্ল 6 এর তুলনা করা ভুল। পাইথন 3 হ্যাঁ পাইথন 2 থেকে বর্ধিত জাম্প, যেখানে পার্ল 6 মোট গ্রাউন্ড আপ পুনরায় নকশা। পার্ল 5 এবং পার্ল 6 হ'ল বোন ভাষা এবং দীর্ঘ সময় ধরে এটি সহ অব্যাহত থাকবে। অন্যদিকে পাইথন 3 কেবলমাত্র অস্তিত্বের সাথে নয়, পাইথন 2 প্রতিস্থাপনের পরিকল্পনা করছে। এটি একটি বড় পার্থক্য।
কমল

1
পার্ল 6 এখনও বিকাশাধীন। হ্যাঁ, রাকুডো পার্ল পার্ল 6 নির্দিষ্টকরণের নিকটতম বাস্তবায়ন তবে এখনও সবকিছু বাস্তবায়ন করে না। পার্ল 6 বাস্তবায়ন এখনও কোনও উত্পাদন প্রস্তুত নেই।
এইচটিবিএ

1
নিখুঁততা এবং তাত্পর্যপূর্ণ অনেক সংজ্ঞা জন্য @ এইচটিবা। পার্ল 6 সম্পূর্ণ এবং উত্পাদন প্রস্তুত। জিনিসটি সম্পূর্ণ অনুমানের সাথে মেলে কিছুটা সময় নিতে পারে, অন্যান্য ভাষার সাথেও একই জিনিস রয়েছে। উদাহরণস্বরূপ, জিসিসি এমনকি সাম্প্রতিক অবধি পুরো সি ++ নির্দিষ্টকরণের সাথে পুরোপুরি সত্যিই মেলে না। ভাষার নকশা এবং বাস্তবায়ন খুব ধীর প্রক্রিয়া।
কমল

1
rakudo.org/node/75 রাকুডো তারকা অনেক আগে মুক্তি পেয়েছিল। আপনার এটি চেষ্টা করা প্রয়োজন।
কমল

11

আমার জন্য একটি বড় শো স্টপার, যা আমি মনে করি না যে স্বয়ংক্রিয় অনুবাদ দ্বারা সমাধান করা যেতে পারে, এটি পূর্ণসংখ্যা বিভাগ। আমার কাছে বৈজ্ঞানিক কোড রয়েছে যা x / 2 উপর নির্ভর করে এক্সকে গোল করে (যখন x পূর্ণসংখ্যা হয়)।

পাইথন 3 এটি করবে না, তবে একটি .5 উত্তর দেবে (বিজোড় এক্স এর জন্য)।
আমি আমার কোডে সমস্ত / কেবল // এর সাথে প্রতিস্থাপন করতে পারি না কারণ মাঝে মাঝে আমি ফ্লোট বিভাজন করি এবং তাই ভাসমান আচরণ চাই।

সুতরাং, আমার অজগর 3 পোর্ট করতে, আমাকে কয়েক / হাজার কোডের লাইন দিয়ে ট্রল করতে হবে, প্রতিটি / এবং চেক করতে হবে এবং আমি এটি / / // হওয়া উচিত কিনা তা বুঝতে পারি seeing


7
"-Q" বিকল্পটি (2.7 থেকে 2.2) বিভাগ-এর জন্য সতর্কবার্তা বাড়াতে পারেন। এছাড়াও, ফিক্সডেভ.পি আপনার স্ক্রিপ্টগুলির এক্সপ্রেশনগুলি আপডেট করতে এই সতর্কতাগুলি ব্যবহার করে।
এরিক সান

10

আপনার প্রয়োজনীয় সমস্ত লাইব্রেরি যদি ইতিমধ্যে পাই 3 কে পোর্ট করা থাকে তবে পাইথন 3 একটি নতুন প্রকল্প শুরু করা ভাল।

যদি এটি কোনও বিকল্প না হয়, পাইথন ২.7 ব্যবহার উভয় পৃথিবীর মধ্যে সেরা: আপনি পাইথন ২.x এর জন্য সর্বাধিক প্রতিটি লাইব্রেরি তৈরি করেছেন এবং আপনি ধীরে ধীরে আপনার কোডকে পাই 3 কে-সামঞ্জস্যপূর্ণ পরিবর্তন করতে পারবেন, যাতে সিদ্ধান্ত নেওয়ার সময় স্থানান্তর সহজ হয় is এটা। আপনার ইতিমধ্যে ২.7-এ থাকা পাই 3 কে থেকে সিনট্যাক্স গুডির তালিকাটি দীর্ঘতর, কেবল এ থেকে আমদানি করতে ভুলবেন না __future__। আমার পছন্দেরগুলি ইউনিকোড হ'ল ডিফল্ট এবং বিভাগ সবসময় একটি ভাসা উত্পাদন করে।


10

ওয়েব পরিষেবাদি দৃষ্টিকোণ থেকে: কোনও বড় সার্ভার ফ্রেমওয়ার্ক বা ওয়েব ফ্রেমওয়ার্ক পাইথন 3 সমর্থন করে না।

আপডেট: স্পষ্টতই এটি ছিল ২০১১ সালের গোড়ার দিকে, এখন (2013 সালের শেষের দিকে), বেশিরভাগ বড় ফ্রেমওয়ার্কগুলি পাইথন 3 নিয়ে কাজ করছে। তবে কিছু এখনও সামঞ্জস্যপূর্ণ নয়। উল্লেখযোগ্য উদাহরণ, পাকান হবে যেখানে এটি এখনও প্রগতিতে কাজ


বিটিডাব্লু, জাজাঙ্গো সবেমাত্র ভায়ো 1.5 তে পাইথন 3 সমর্থন করতে শুরু করেছে।
9000

1
জাজানো ১. 1. এখন আনুষ্ঠানিকভাবে পাইথন ৩ সমর্থন করে Fla ফ্লাস্কও এটিকে সমর্থন করে।
ছন্তিয়াল

8

আপনি ভারী আই 18 এন কাজ না করে আমি পি 3 কে ব্যবহার করতে দেখেছি এমন কোন বাধ্যতামূলক কারণ নেই। আমার প্রচেষ্টায়, আমি খুঁজে পেয়েছি বহুল প্রচারিত ইউনিকোডটি আমার (এএসসিআইআই) কাজের এবং আমার কোড আটকে রাখার বাধ্যতামূলক জেনারেটর হিসাবে বাধা হয়ে দাঁড়িয়েছে।

কয়েক বছরে, 3 আরও বেশি আকর্ষণীয় পরিবেশ উপস্থাপন করবে, তবে, আজ নয়।


4

বিতরণ পাইথন 3 উপলভ্য করে না। কিছু ফ্রিঞ্জ ডিস্ট্রোস রয়েছে যা ইতিমধ্যে পাইথন 2 এ স্থানান্তর করে। তবে মূলধারার লিনাক্স ভেরিয়েন্ট যেমন ডেবিয়ান, উবুন্টু ইত্যাদি দেয় না। অ্যাপ্লিকেশন লেখক হিসাবে এটি না করা আমার পক্ষে প্রধান কারণ।

যাইহোক আমি রূপান্তরটি প্রস্তুত করেছিলাম এবং এমনকি সিনট্যাক্স কনস্ট্রাক্টগুলিও এড়িয়ে যাওয়ার চেষ্টা করেছি যা বেমানান হয়েছে , আমি এটি সঠিকভাবে পরীক্ষা করতে পারি না। এটি সত্যিই মুরগির ডিম এবং ডিমের সমস্যায় ফোটে।


4
এটি একবারে সত্য হতে পারে তবে "অ্যাপটি-পাইপ পাইথন 3 ইনস্টল করুন" এবং "ইয়াম ইনস্টল পাইথন 3" উভয় দীর্ঘ সময় ধরে কাজ করেছেন। টক্স এবং শাইনিং পান্ডা সিআই এর মতো পরিষেবাদি একাধিক পাইথন সংস্করণ জুড়ে পরীক্ষা করার জন্য এটি সোজা করে তোলে।
ncoghlan

এখন এগুলির অনেকগুলি ডিফল্টরূপে পাইথন 3 ইনস্টল করে, অন্যান্য অন্যান্য প্রোগ্রামিং ভাষার মতো নয়।
আন্তি হাপাল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.