0 এবং 1 দ্বারা 0.1 দ্বারা পা রাখার কোনও উপায় আছে?
আমি ভেবেছিলাম আমি নীচের মতো এটি করতে পারি তবে এটি ব্যর্থ হয়েছিল:
for i in range(0, 1, 0.1):
print i
পরিবর্তে, এটি বলে যে পদক্ষেপ যুক্তি শূন্য হতে পারে না, যা আমি আশা করি না।
itertools.takewhile
এবং itertools.count
। drange
যদিও এটি পারফরম্যান্স-বুদ্ধিমানের চেয়ে ভাল নয় ।
seq
জিএনইউ কোর্টিলগুলিতে থাকা সরঞ্জামটি গোলাকৃতির seq 0 0.1 1
ত্রুটিগুলি ছাড়াই কোনওটিকে মঞ্জুরি দেয় !
seq
সি ব্যবহার long double
টাইপ অভ্যন্তরীণভাবে এবং হয় rounding ত্রুটির বিষয়। আমার মেশিনে উদাহরণস্বরূপ, seq 0 0.1 1
দেয় 1
(প্রত্যাশিত হিসাবে) তার শেষ আউটপুট কিন্তু seq 1 0.1 2
দেয় 1.9
গত আউটপুট (বদলে প্রত্যাশিত 2
)।
itertools.takewhile(lambda x: (x+0.05)<1, itertools.count(0,0.1))
বা itertools.islice(itertools.count(0,0.1), 10)
(আপনার পরে import itertools
), যদিও আমি পরীক্ষিত করি নি যা কোনটি বেশি কার্যকর