ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

แยกข้อความด้วย Python 

โค้ดที่ผมจะนำมาเสนอ คือ การแยกข้อความทีละตัวอักษรด้วยภาษา Python โดยโปรแกรม PyCharm โดยข้อความที่ลองรับก็จะมี 3 อย่างได้แก่ ภาษาอังกฤษพิมพ์เล็ก-ใหญ่ และตัวเลข  คำสั่งการทำงานจะมีส่วนของการสร้างหน้าจอ หัวข้อเรื่องที่แสดง ข้อความที่รองรับ Text, Label, Button เป็นต้น ขั้นตอนในการทำงานนั้นก็ไม่ยากลองสามารถลองเขียนและเพิ่มตัวอักษรที่เป็นอย่างอื่นกันได้ตามตัวอย่างโค้ดด้านล่างเลยครับ

 

ติดตั้ง tkinter บนระบบปฏิบัติการ Windows

pip install tkinter

 

Input

from tkinter import *
gui = Tk()
gui.title("Font Converter")
gui.resizable(0,0)

def replace():
    text = entry.get("1.0",END)
    replacements = {
        #ตัวอักษรตัวพิมพ์ใหญ่
        "A": "A",
        "B": "B",
        "C": "C",
        "D": "D",
        "E": "E",
        "F": "F",
        "G": "G",
        "H": "H",
        "I": "I",
        "J": "J",
        "K": "K",
        "L": "L",
        "M": "M",
        "N": "N",
        "O": "O",
        "P": "P",
        "Q": "Q",
        "R": "R",
        "S": "S",
        "T": "T",
        "U": "U",
        "V": "V",
        "W": "W",
        "X": "X",
        "Y": "Y",
        "Z": "Z",
        #อักษรตัวพิมพ์เล็ก
        "a": "a",
        "b": "b",
        "c": "c",
        "d": "d",
        "e": "e",
        "f": "f",
        "g": "g",
        "h": "h",
        "i": "i",
        "j": "j",
        "k": "k",
        "l": "l",
        "m": "m",
        "n": "n",
        "o": "o",
        "p": "p",
        "q": "q",
        "r": "r",
        "s": "s",
        "t": "t",
        "u": "u",
        "v": "v",
        "w": "w",
        "x": "x",
        "y": "y",
        "z": "z",
        #ตัวเลข
        "1": "1",
        "2": "2",
        "3": "3",
        "4": "4",
        "5": "5",
        "6": "6",
        "7": "7",
        "8": "8",
        "9": "9",
        "0": "0",
    }
    text = "".join([replacements.get(c, c) for c in text])
    output.delete('1.0', END)
    output.insert(END, str(text))

#ตัวแปรข้อความ
enter = StringVar()
#การสร้างวิดเจ็ต
l1 = Label(gui, text="Enter text:")
entry = Text(gui, width=50, height=3, wrap=WORD)
button = Button(gui, text="Convert", width=20)
l2 = Label(gui, text="Converted text:")
output = Text(gui, width=50, height=3, wrap=WORD)
#การวางตำแหน่งวิดเจ็ต
l1.grid(row=1, column=1, padx=5, sticky=W)
entry.grid(row=2, column=1, columnspan=2, padx=5, pady=(0,10))
button.grid(row=3, column=1, columnspan=2, pady=5)
l2.grid(row=4, column=1, padx=5, sticky=W)
output.grid(row=5, column=1, columnspan=2, padx=5, pady=(0,10))
#เปิดใช้งานปุ่มโดยเรียกใช้ฟังก์ชัน replace
button.configure(command=replace)
gui.mainloop()

Output

แยกข้อความออกทีละตัว
ช่องด้านบนคือข้อมูลส่วนล่างแยกข้อความที่ละตัวอักษร

 

ถ้าเราต้องการที่จะแยกข้อความก็ให้ใส่ข้อความในช่อง Enter text จากนั้นกด Convert เพื่อทำการแปลงข้อความออกเป็นที่ละตัวอักษร เพื่อให้ง่ายกับการอ่าน ในส่วนของโค้ดนั้นจะใช้ได้กับข้อความที่เป็นภาษาอังกฤษตัวเล็ก-ใหญ่ แล้วก็ตัวเลขถ้าต้องการเพิ่มภาษาอื่นก็ให้ดูตัวอย่างจากตัวแปลงที่สร้างให้ใส่ตัวอักษร

 

ในส่วนการทำงานของคำสั่งจะมีการเรียกใช้ tkinter จากนั้นทำการสร้างหน้าจอขึ้นมาในส่วนของฟังก์ชันการทำงานนั้นผมกำหนดตัวอักษรพิมพ์ใหญ่-เล็ก ภาษาอังกฤษ และตัวเลข ถ้าเราพิมพ์ภาษาไทยลงไปนั้นข้อความจะไม่แยกออกให้ต้องทำการสร้างตัวแปรในฟังก์ชัน replace เพื่อให้โปรแกรมรู้จักกับตัวแปรแล้วสามารถแยกข้อความออกมาได้ ในส่วนของหน้าต่างที่แสดงจะแบ่งเป็น 2 ส่วน ส่วนแรกที่อยู่ด้านบนคือให้เรากรอกข้อความลงไป จากนั้นกดปุ่ม Covert ก็จะแปลงข้อความออกเป็นที่ละตัวเพื่อนให้อ่านออกง่าย

 

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : แยกข้อความด้วย Python 

-VDO Tutorail - Python (53)

-บทเรียนเกี่ยวกับ Python (65)

-บทเรียนเกี่ยวกับ Python GUI (9)

-เทคนิคการเขียน Python (63)

-ถาม-ตอบ ปัญหา Python (623)

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
pycharm รันภาษไม่ได้
โดย Anonymous ส 25 ม.ค. 2020 5:15 pm บอร์ด Programming - C/C++ & java & Python
1
2
ส 25 ม.ค. 2020 5:16 pm โดย mindphp
ขอสอบถามวิธีการ ปิด ip หน่อยครับ
โดย benzas00123 ส 25 ม.ค. 2020 2:48 pm บอร์ด Programming - C/C++ & java & Python
1
7
ส 25 ม.ค. 2020 5:18 pm โดย mindphp
จะทำไรให้ View Detail จัดเรียงได้ครับ
โดย jamepiyawat ส 25 ม.ค. 2020 2:32 pm บอร์ด Joomla Development
1
7
ส 25 ม.ค. 2020 2:41 pm โดย mindphp
os.mkdir ฟังก์ชั่นสำหรับการสร้าง folder ใหม่
โดย benzas00123 ศ 24 ม.ค. 2020 6:44 pm บอร์ด Python Knowledge
0
8
ศ 24 ม.ค. 2020 6:44 pm โดย benzas00123
upload รูปภาพหลายๆรูป ด้วย Flask
โดย benzas00123 ศ 24 ม.ค. 2020 6:31 pm บอร์ด Python Knowledge
0
9
ศ 24 ม.ค. 2020 6:31 pm โดย benzas00123
มาแล้ว MDPartner Component สำหรับจัดเก็บข้อมูลลูกค้าในระบบ CRM
โดย prmindphp ศ 24 ม.ค. 2020 6:02 pm บอร์ด MindPHP News & Feedback
0
32
ศ 24 ม.ค. 2020 6:02 pm โดย prmindphp
os.remove ฟังก์ชั่นสำหรับการลบไฟล์
โดย benzas00123 ศ 24 ม.ค. 2020 5:35 pm บอร์ด Python Knowledge
0
7
ศ 24 ม.ค. 2020 5:35 pm โดย benzas00123
ขอสอบถามวิธีการดึงข้อมูลมาลงใน table ที่เราต้องการหน่อยครับ
โดย benzas00123 ศ 24 ม.ค. 2020 2:06 pm บอร์ด Programming - C/C++ & java & Python
1
17
ศ 24 ม.ค. 2020 2:14 pm โดย benzas00123
ลูกไม่รักดี?
โดย noppadonsk ศ 24 ม.ค. 2020 10:40 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
14
ศ 24 ม.ค. 2020 10:40 am โดย noppadonsk
วิธีการแปลง timestamp เพื่อหาจำนวนวันที่ผ่านมาหรือคงเหลือ
โดย Ittichai_chupol พ 22 ม.ค. 2020 6:37 pm บอร์ด PHP Knowledge
0
46
พ 22 ม.ค. 2020 6:37 pm โดย Ittichai_chupol
วิธีการตรวจสอบว่ารูปเป็นแนวตั้งหรือแนวนอน ด้วยภาษา php
โดย jamepiyawat พ 22 ม.ค. 2020 6:16 pm บอร์ด PHP Knowledge
0
30
พ 22 ม.ค. 2020 6:16 pm โดย jamepiyawat
Range Sliders เก็บค่าตัวเลขด้วย range sliders
โดย benzas00123 พ 22 ม.ค. 2020 5:50 pm บอร์ด Booststap Knowledge
1
77
ศ 24 ม.ค. 2020 9:32 am โดย LEG
อยากทราบวิธีการตรวจสอบว่าจะมีเวลาอีกกี่วันถึงจะ ถึงเลข timestamp ที่กำหนด
โดย Ittichai_chupol พ 22 ม.ค. 2020 3:54 pm บอร์ด Programming - PHP
1
95
พ 22 ม.ค. 2020 4:18 pm โดย thatsawan
ขอสอบถามวิธีการเขียน bootstrap 3 ในการสร้าง bar ครับ
โดย benzas00123 พ 22 ม.ค. 2020 3:13 pm บอร์ด HTML CSS
5
144
พ 22 ม.ค. 2020 3:32 pm โดย benzas00123
วันหยุดที่หายไป
โดย noppadonsk พ 22 ม.ค. 2020 11:42 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
49
พ 22 ม.ค. 2020 11:42 am โดย noppadonsk
วิธีการปรับการการแสดงการ รายชื่อของแจ้งเตือน bookmark โดย phpbb
โดย Ittichai_chupol อ 21 ม.ค. 2020 5:45 pm บอร์ด PHP Knowledge
0
39
อ 21 ม.ค. 2020 5:45 pm โดย Ittichai_chupol
pillow vs wand library ความแตกต่างของ library ทั้ง 2 ตัวในการ procress รูปภาพ
โดย benzas00123 อ 21 ม.ค. 2020 5:29 pm บอร์ด Python Knowledge
1
43
อ 21 ม.ค. 2020 5:54 pm โดย mindphp
อยู่ดีๆ ก็ไม่สามารถเชื่อมต่อกับ database ได้ครับ
โดย benzas00123 อ 21 ม.ค. 2020 4:46 pm บอร์ด Programming - C/C++ & java & Python
5
87
อ 21 ม.ค. 2020 5:39 pm โดย benzas00123
ขอถามเกี่ยวกับ library ImageMagick ครับ
โดย benzas00123 อ 21 ม.ค. 2020 3:29 pm บอร์ด Programming - C/C++ & java & Python
2
42
อ 21 ม.ค. 2020 4:23 pm โดย benzas00123
Git Lad จะทำอย่างไรให้ไฟล์ที่อยู่ในโฟร์ย่อย ออกมาครับ
โดย jamepiyawat อ 21 ม.ค. 2020 12:08 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
169
อ 21 ม.ค. 2020 2:04 pm โดย jamepiyawat