Q - สอบถามวิธีใช้งาน split ครับ

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: Q - สอบถามวิธีใช้งาน split ครับ

Re: Q - สอบถามวิธีใช้งาน split ครับ

โดย tatiya » 18/08/2018 3:40 pm

ลองทำตามแล้วครับ สามารถทำได้ทุกวิธีที่แนะนำมาเลยครับ ขอบคุณครับ
ผมเลือกใช้ วิธี split แบบ name.splitlines() นะครับ เพราะมันสามารถตัดได้ทั้งสองเลย

Re: Q - สอบถามวิธีใช้งาน split ครับ

โดย thatsawan » 18/08/2018 3:23 pm

วิธีสุ่ม list

import random

foo = ['a', 'b', 'c', 'd', 'e']
print(random.choice(foo))
print(random.choice(foo))

Re: Q - สอบถามวิธีใช้งาน split ครับ

โดย thatsawan » 18/08/2018 3:20 pm

ลอง name.splitlines()

Re: Q - สอบถามวิธีใช้งาน split ครับ

โดย mindphp » 18/08/2018 3:14 pm

ถ้าแยกเก็บ ใช้วิธี สุ่มจาก dict , list จะดีกว่า
ไม่ต้องเอาข้อความมา ต่อแล้วตัด

เช่น random จาก ตัวเลข 0 ถึง index ทั้งหมดใน dict ทีมี
แล้ว อ่านค่า เอามาใช้ เช่น dict เก็บค่าไว้ 30 ตัว เราสุ่ม 0,29 สมมุดได้ 23
เมื่อได้แล้ว เอามาใช้ได้ตรงๆเลย คือ
var_dict[23]

Q - สอบถามวิธีใช้งาน split ครับ

โดย tatiya » 18/08/2018 2:52 pm

คือตอนนี้ผมต้องการตัดคำมาสุ่มครับ สมมติว่าตอนนี้ผมมีข้อมูลแบบนี้ครับ

ลองดูตามนี้ดูนะครับ

ลองศึกษาตามกระทู้นี้เลยครับ

คิดว่ากระทู้นี้มีคำตอบนำครับลองดู

ลองดูที่นี่สิครับ

ลองหาดูจากกระทู้นี้นะครับ

ลองดูจากนี่สิครับ

ศึกษาจากกระทู้พวกนี้ดูครับ

ผมตัดโดยใช้ code ประมาณนี้นะครับ (ข้อมูลข้างต้น จะเก็บอยู่ในตัวแปร answer นะครับ)

โค้ด: เลือกทั้งหมด

name = answer.text
    #print("ข้อความจาก topic : \n",name)
    textnew = name.split("\n")
    print("ข้อความที่ตัดมาได้",textnew)
    print(len(newtext))
ผลลัพท์
['ลองดูตามนี้ดูนะครับ', '', 'ลองศึกษาตามกระทู้นี้เลยครับ', '', 'คิดว่ากระทู้นี้มีคำตอบนำครับลองดู', '', 'ลองดูที่นี่สิครับ', '', 'ลองหาดูจากกระทู้นี้นะครับ', '', 'ลองดูจากนี่สิครับ', '', 'ศึกษาจากกระทู้พวกนี้ดูครับ', '', 'ผมเคยเห็นคำตอบที่คุณถามตามกระทู้นี้อยู่นะครับ']
15

ปรากฏว่า มันตัดแค่ บรรทัดออกครับมันเหลือช่องว่างไว้ แล้วเวลาผมนำคำมาสุ่ม บางทีมันจะสุ่นค่าที่ว่างออกมาด้วยครับ ผมสามารถตัดทั้งบรรทัดและช่องว่างออกพร้อมกันได้มั้ยครับ ช่วยแนะนำทีครับ

ข้างบน