ফর্ম্যাট স্ট্রিংয়ের মধ্যে '{}' ব্যবহার করা কি পাইথোনিক হিসাবে বিবেচিত হয়?


9

আমি শিখেছি আপনি লিখতে পারেন

'{}{}'.format(string_a, string_b)

পরিবর্তে

'{0}{1}'.format(string_a, string_b)

পাইথনে, অর্থাত্ স্ট্রিং বিন্যাসের পরামিতিগুলির জন্য আপনি সংখ্যাগুলি বাদ দিতে পারেন যখন আপনি জিনিসগুলিকে ক্রমান্বয়ে স্লট করতে চান।

এটি কি পাইথোনিক হিসাবে বিবেচিত?

দ্রষ্টব্য: "পাইথোনিক" অর্থবৃত্তীয় পাইথন কোড বোঝাতে পাইথন প্রোগ্রামারদের মধ্যে একটি সাধারণ ব্যবহৃত শব্দ। পাইথন সংস্কৃতিতে শৈলীর প্রশ্নগুলির বিষয়ে স্পষ্ট sensকমত্যের ঝোঁক রয়েছে, বিশেষত এটির মতো খুব নির্দিষ্ট একটির ক্ষেত্রে ভাষার স্পষ্ট নকশার দর্শন দেওয়া "এটির একটির অবশ্যই উচিত - এবং কেবলমাত্র একটিই হওয়া উচিত - এটি করার সুস্পষ্ট উপায়"। এটি "পাইথনের জেন" থেকে উদ্ধৃত হয়েছে, "পাইথোনিক" কী এবং এটি পাইথনের প্রতিটি বিতরণ (যে কোনও পাইথন ইন্টারপ্রেটার কমান্ড লাইনে import thisএটি দেখার জন্য প্রবেশ করুন ) এর সাথে অন্তর্ভুক্ত রয়েছে তা সংজ্ঞায়িত করার দিকে অনেক এগিয়ে যায় এফোরিজমের একটি সেট ।


4
@ গ্রেগ হিউগিল: "পাইথোনিক" একটি প্রচলিত ব্যবহৃত শব্দ যা মূলত "আইডোমেটিক পাইথন" এর অর্থ; পাইথন কোডটি বাছাই করুন যা মানের পাইথন কোডের আফিকোনাডোগুলি স্টাইলিস্টিকভাবে আনন্দদায়ক মনে করবে।
কারসন 63000

1
এই খুব নির্দিষ্ট বৈশিষ্ট্যটি স্পষ্টভাবে পাইথনে অন্তর্ভুক্ত করা হয়েছে (এটি আসলে কোনও শৈলীর প্রশ্ন নয়), তবে কেন এটি কোনও যুক্তিসঙ্গত সংজ্ঞা দ্বারা "পাইথোনিক" হিসাবে বিবেচিত হবে না? আমি যতদূর জানি, ভাষার এমন কোনও বৈশিষ্ট্য নেই যা "অ পাইথোনিক" হিসাবে বিবেচিত হয়।
গ্রেগ হিউগিল

4
রেফারেন্সের জন্য, {}বৈশিষ্ট্যটি পাইথন ৩.১ এ প্রবর্তিত হয়েছিল । এই সংযোজনটি উত্সাহিত করার জন্য বর্ধিতকরণটি ছিল 5237 । "দয়া করে এগিয়ে যান এবং এটি শেষ করুন including এই নিয়ে আমি আনন্দিত! আমি আনন্দিত!" সহ এই ইস্যুতে গিডোর বেশ কয়েকটি মন্তব্য রয়েছে! যদি এটিকে "পাইথোনিক" হিসাবে বিবেচনা না করা হয় তবে আমি কী তা জানি না।
গ্রেগ হিউগিল

4
এই প্রশ্নটি বন্ধ করার জন্য যারা ভোট দিচ্ছেন তাদের কাছে, আমি কেবল উল্লেখ করতে পারি যে পাইথোনিক কি বা না তা পাইথন কোডিং সংস্কৃতির একটি গুরুত্বপূর্ণ অঙ্গ, এবং আমি যুক্তি দিয়েছিলাম যে কোডিং সংস্কৃতিটি একটি স্বীকৃত বিষয় সফটওয়্যার ইঞ্জিনিয়ারিংয়ের একটি গুরুত্বপূর্ণ উপাদান subject এউ সাইটে.
ঘোপার 21

2
@ আন্ড্রেয়া - আমার প্রথম ধারণাটি ঠিক এটাই ছিল, তবে বিডিএফএল মনে করে যে এটি অ-পাইথোনিক। এ সম্পর্কে তাঁর উক্তিটি দেখার পরে, আমি আবার পাইথনের জেনের দিকে ফিরে তাকালাম, এবং ভেবেছিলাম এটি সম্ভবত "বাস্তবতার প্রহার বিশুদ্ধতা" এর একটি ঘটনা? আলোচনার যুক্তি (গ্রেগের উত্তরে লিঙ্কিত) কোড লেখকের পক্ষে সুবিধার প্রায়। এবং যে কোনও ক্ষেত্রে, স্ট্রিং ফরম্যাটিংটি ব্যবহার করার পক্ষে প্রকৃতপক্ষে সর্বাধিক স্পষ্ট উপায় হ'ল "{a}{b}".format(a=string_a, b=string_b)সংখ্যার চেয়ে। যাইহোক, এটাই আমার অনুমান এবং চিন্তাভাবনার লাইনের মধ্যে পড়ে ...
ঘোপার 21

উত্তর:


12

{}বৈশিষ্ট্য ছিল পাইথন 3.1 চালু (এবং পাইথন 2.7 জন্য ব্যাক-পোর্ট)। এই সংযোজনটি উত্সাহিত করার জন্য বর্ধিতকরণটি ছিল 5237 । গিডোর এই বিষয়ে বেশ কয়েকটি মন্তব্য রয়েছে, যার মধ্যে রয়েছে:

দয়া করে এগিয়ে যান এবং এটি শেষ করুন। আমি আনন্দিত এটি ভিতরে যাচ্ছে!

থেকে পৃষ্ঠাঙ্কন যে সাজানোর সঙ্গে একটি বৈশিষ্ট্য BDFL অবশ্যই কোনো পরিমাপ দ্বারা "Pythonic" বিবেচনা করা হবে।

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