একটি স্ট্রিংয়ে প্রথম 100 টি অক্ষর আউটপুট করুন


108

পাইথনে একটি স্ট্রাস্টিং ফাংশন খুঁজে পেতে পারে।

বলুন আমি একটি স্ট্রিংয়ে প্রথম 100 টি অক্ষর আউটপুট করতে চাই, আমি এটি কীভাবে করব?

আমি এটি নিরাপদেও করতে চাই, যদি স্ট্রিংটি 50 টি অক্ষর হয় তবে এটি ব্যর্থ হওয়া উচিত নয়।



1
"অক্ষর" বলতে কী বোঝ? কোড পয়েন্ট, গ্রাফি ক্লাস্টার বা কোড ইউনিট? স্লাইসিং কোড ইউনিটগুলি গণনা করবে, যা পছন্দসই ফলাফল না দেয়।
ফিলিপ

উত্তর:


168
print my_string[0:100]

5
এটি 100 টির চেয়েও কম স্ট্রিংয়ের জন্যও কাজ করে, উদাহরণস্বরূপ print 'foo'[:100](দ্রষ্টব্য যে len('foo')3, সুতরাং যখন foo[100]কাজ করে না তখনও এটি করে)
রডরিগো লেগুনা

67

পাইথন টিউটোরিয়াল থেকে :

সজ্জা সূক্ষ্ম সূক্ষ্মভাবে পরিচালনা করা হয়: একটি সূচক যে খুব বড় হয় স্ট্রিং আকার দ্বারা প্রতিস্থাপিত হয় , নিম্ন বাউন্ডের চেয়ে ছোট একটি উচ্চতর বাউন্ড একটি খালি স্ট্রিং দেয়।

সুতরাং এটি ব্যবহার করা নিরাপদ x[:100]



7

ফিলিপের উদ্বেগের উত্তর দেওয়ার জন্য (মন্তব্যে), স্লাইসিং ইউনিকোড স্ট্রিংয়ের জন্যও ঠিক কাজ করে

>>> greek=u"αβγδεζηθικλμνξοπρςστυφχψω"
>>> print len(greek)
25
>>> print greek[:10]
αβγδεζηθικ

যদি আপনি উপরের কোডটি স্ক্রিপ্ট হিসাবে চালাতে চান তবে এই লাইনটিকে শীর্ষে রাখুন

# -*- coding: utf-8 -*-

যদি আপনার সম্পাদকটি utf-8 এ সংরক্ষণ না করে তবে সঠিক এনকোডিংয়ের বিকল্প দিন


2
না আপনার উত্তর অপমানজনক, কিন্তু এক গ্রিক একমাত্র 24 অক্ষর, ςএবং σএকই চিঠি :-) হয়
paxdiablo

4
@ প্যাক্সিডিয়াবল, দোহ! আমি সেগুলি উইকিপিডিয়া পৃষ্ঠায় অনুলিপি করেছি। ভাগ্যবান আমি greek_alphabetতখন ভেরিয়েবলটির নাম
রাখিনি

4

অ্যারে কাটা দিয়ে সম্পন্ন করা হয় [first:last+1]

আমি যে কৌশলটি অনেকটা ব্যবহার করতে চাই তা হ'ল উপবৃত্ত সহ অতিরিক্ত তথ্য নির্দেশ করা। সুতরাং, যদি আপনার ক্ষেত্রটি একশ অক্ষর হয় তবে আমি এটি ব্যবহার করব:

if len(s) <= 100:
    print s
else:
    print "%s..."%(s[:97])

এবং হ্যাঁ, আমি জানি ফর্ম্যাটিং অপারেটরের ()ক্ষেত্রে এই ক্ষেত্রে অতিমাত্রায় কাজ %, এটি কেবল আমার স্টাইল।


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

3

আপনার স্ট্রিং যথেষ্ট দীর্ঘ না হলে পূর্ববর্তী বেশিরভাগ উদাহরণ ব্যতিক্রম উত্থাপন করবে।

আরেকটি পন্থা ব্যবহার করা হয় 'yourstring'.ljust(100)[:100].strip()

এটি আপনাকে প্রথম 100 টি চর দেবে। আপনার স্ট্রিংয়ের শেষ অক্ষরটি ফাঁকা হওয়ার ক্ষেত্রে আপনি একটি সংক্ষিপ্ত স্ট্রিং পেতে পারেন।


ধন্যবাদ। আশ্চর্যজনক কেন স্ট্যাকওভারফ্লোতে সেরা উত্তরগুলি সহজেই স্বীকৃত হয় না এবং উন্নত হয় না।
তুলিল মুসা

2

স্ট্রিং ফর্ম্যাটিং ব্যবহার করে %এটি পরিচালনা করার দুর্দান্ত উপায়। এখানে কিছু উদাহরণঃ.

ফর্ম্যাটিং কোডটি স্ট্রিংয়ে '%s'রূপান্তরিত '12345'হয় তবে এটি ইতিমধ্যে একটি স্ট্রিং।

>>> '%s' % '12345'

'12345'

'%.3s' শুধুমাত্র প্রথম তিনটি অক্ষর ব্যবহার করতে নির্দিষ্ট করে।

>>> '%.3s' % '12345'

'123'

'%.7s'প্রথম সাতটি অক্ষর ব্যবহার করতে বলেছে তবে পাঁচটি আছে। সমস্যা নেই.

>>> '%.7s' % '12345'

'12345'

'%7s' বামে শূন্যস্থান সহ হারিয়ে যাওয়া অক্ষরগুলি পূরণ করে, সাতটি অক্ষর পর্যন্ত ব্যবহার করা হয়।

>>> '%7s' % '12345'

'  12345'

'%-7s' ডানদিকে অনুপস্থিত অক্ষরগুলি পূরণ করা বাদে একই জিনিস।

>>> '%-7s' % '12345'

'12345  '

'%5.3' প্রথম তিনটি অক্ষর ব্যবহার করুন বলুন, তবে এটিকে বামে শূন্যস্থান দিয়ে মোট পাঁচটি অক্ষর পূরণ করুন।

>>> '%5.3s' % '12345'

'  123'

ডানদিকে পূরণ করা ছাড়া একই জিনিস।

>>> '%-5.3s' % '12345'

'123  '

একাধিক যুক্তিও পরিচালনা করতে পারে!

>>> 'do u no %-4.3sda%3.2s wae' % ('12345', 6789)

'do u no 123 da 67 wae'

আপনার যদি আরও বেশি নমনীয়তা প্রয়োজন str.format()হয় তবে তা উপলব্ধ। এখানে উভয়ের জন্য ডকুমেন্টেশন রয়েছে


0
[start:stop:step]

সুতরাং আপনি যদি কেবলমাত্র 100 টি প্রথম অক্ষর নিতে চান, ব্যবহার করতে পারেন your_string[0:100]বা your_string[:100]আপনি যদি কেবলমাত্র চরিত্রটিকে এমনকি একই অবস্থানে নিতে চান your_string[::2] তবে "ডিফল্ট মানগুলি" শুরু করার জন্য 0, স্ট্রিং-এর লেন, এবং পদক্ষেপ - 1 ব্যবহার করুন। যখন আপনি এর একটি সরবরাহ না করে এবং ':' রাখেন না, এটি এটি ডিফল্ট মান ব্যবহার করবে।

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