मैं एक स्ट्रिंग सूची को शून्य मानों और स्ट्रिंग्स ['1', '2', '',...) के रूप में दर्ज की गई संख्याओं के साथ एक पूर्णांक सूची में बदलने की कोशिश कर रहा हूं जहां शून्य मान शून्य हैं [1, 2, 0,। ..]। जिस कोड का मैं अभी उपयोग कर रहा हूं वह मेरी सूचियों से छुटकारा पाता है और एक 0 देता है: छवि विवरण यहां दर्ज करें
try:
input1 = int('column1')
except ValueError:
input1 = 0
try:
input2 = int('column2')
except ValueError:
input2 = 0
try:
input3 = int('column3')
except ValueError:
input3 = 0
print(input1)
0
2 जवाब
आप प्रत्येक मान को int
में बदलने के लिए सूची समझ का उपयोग कर सकते हैं, या यदि यह एक खाली स्ट्रिंग है तो बस 0
का उपयोग करें।
>>> values = ['1', '2', '', '4']
>>> [int(i) if i else 0 for i in values]
[1, 2, 0, 4]
समाधान
some_data = ['1', '2', '', '3', '', '4']
new_data = []
for i in some_data :
if i != '':
new_data.append(int(i))
else:
new_data.append(0)
print(some_data)
print(new_data)
आउटपुट
(xenial)vash@localhost:~/python$ python3 helping.py ['1', '2', '', '3', '', '4'] [1, 2, 0, 3, 0, 4]
ऐसा लगता है कि लूप का उपयोग करके कार्य आसान हो सकता है। some_data
में आइटम के माध्यम से चक्र के लिए पहले एक for
लूप सेट करें। फिर प्रत्येक आइटम के लिए if i != '':
चेक करें। यदि आइटम पास हो जाता है, तो हम append
आइटम को int
, else
के रूप में आइटम के ''
होने की स्थिति में हम append
एक 0
.
संबंधित सवाल
नए सवाल
python
पायथन एक बहु-प्रतिमान है, गतिशील रूप से टाइप किया हुआ, बहुउद्देशीय प्रोग्रामिंग भाषा है। यह एक साफ और एक समान वाक्यविन्यास सीखने, समझने और उपयोग करने के लिए त्वरित होने के लिए डिज़ाइन किया गया है। कृपया ध्यान दें कि अजगर 2 आधिकारिक तौर पर 01-01-2020 के समर्थन से बाहर है। फिर भी, संस्करण-विशिष्ट पायथन सवालों के लिए, [अजगर -२.०] या [अजगर -३.x] टैग जोड़ें। पायथन वेरिएंट (जैसे, ज्योथन, PyPy) या लाइब्रेरी (उदा।, पांडस और न्यूमपी) का उपयोग करते समय, कृपया इसे टैग में शामिल करें।