Warning: session_start(): open(/tmp/sess_hds8t9e1t3maa8e50mkc137ag7, O_RDWR) failed: No space left on device (28) in /disk2/guru/public_html/qa-include/app/users.php on line 146
Python: วิธีตรวจสอบ Array ว่ามีสตริงเหมือนกันมั้ย - CITEC-Guru ถามปัญหาคอม เขียนโปรแกรม
พึ่งเคยใช้งานครั้งแรกโปรดอ่านที่นี่! howtouse!
x
  • Register
หางานด้าน IT อยู่เหรอ?

Python: วิธีตรวจสอบ Array ว่ามีสตริงเหมือนกันมั้ย

+3 votes

สมมุติว่า a = array([dog,cat,ant]) , b = array([dog,rat,bat])

แล้วเราอยากรู้ว่าสตริงที่อยู่ใน b มีสตริงตัวใดบ้างที่เหมือนกับ a (โดยในที่นี้คำตอบคือ dog)

เขียนโค๊ดคร่าวๆได้อย่างไรคะ '_')

ถามเมื่อ May 13, 2012 in Python โดย On Narisa (185 คะแนน)
   

3 Answers

+3 votes
Python เขียนแบบนั้นได้หรือครับ
มันต้องเป็น
a = ['dog', 'cat', 'ant']
b = ['dog', 'rat', 'bat']

ทำ array เป็น set แล้วใช้ intersection
c = set(a).intersection(b)
จะได้เป็น set แล้ว for in เอาก็ได้ครับ
ตอบเมื่อ May 14, 2012 โดย Krurkrit Phoosakul (1,174 คะแนน)
พิมพ์ผิดค่ะ เบลอ จำสลับกับ numpy |||orz
ขอบคุณค่าา ><
อืมลองแล้วแจ๋วเลยครับ
>>> a=['A','B']
>>> b=['B','C']
>>> c = set(a).intersection(b)
>>> print c
set(['B'])
>>>
ขอโทษครับ ลืมดูให้ดีว่ามันเป็น Python นึกว่าเป็น PHP พอดีรีบไปโรงเรียน อิอิ ขออภัยจริงๆครับ
+1 vote
resultCheck=['ERR','OK','OK','OK','OK','OK']

#..................your process

if ('ERR' in resultCheck) is True:

     print "have error"

else:

    print "no have error"

 

เอาตัวใดตัวหนึงเป็นหลัก แล้ว loop เทียบค่าด้วย in ครับ

 

ปล. ลืมดูข้างบนก่อน ตามนั้นครับ
ตอบเมื่อ May 14, 2012 โดย อคนิษฐ ศุภถาวราภรณ์ (116 คะแนน)
edited May 14, 2012 โดย อคนิษฐ ศุภถาวราภรณ์
+2 votes

source = ['dog', 'cat', 'ant']
search = ['dog', 'rat', 'bat']

 

ans = filter(lambda x: x in search, source)

เพิ่มเติม http://docs.python.org/library/functions.html#filter

ตอบเมื่อ May 14, 2012 โดย nodtem66 (218 คะแนน)

Related questions

0 votes
0 คำตอบ
100 views ถามเมื่อ Dec 16, 2013 in Software โดย pucomponent (104 คะแนน)
0 votes
2 คำตอบ
1,980 views ถามเมื่อ Feb 26, 2013 in C# โดย Ying Thapanee (112 คะแนน)
+1 vote
2 คำตอบ
+1 vote
1 คำตอบ
...