การจัดรูปแบบสตริง#
การแนะนำ#
f-strings เป็นวิธีการจัดรูปแบบข้อความและตัวเลขที่แนะนำใน Python โดยอนุญาตให้ฝังตัวแปร นิพจน์ และการเรียกใช้ฟังก์ชันไว้ภายในได้โดยตรง {}.
ในการสร้างสตริง f ให้เพิ่ม f ไว้ข้างหน้าสตริง และวางตัวแปร นิพจน์ หรือการเรียกฟังก์ชันใดๆ ไว้ภายใน {}
x = 1
y = 5
# Display the variables using an f-string
robot.screen.print(f"Position: ({x}, {y})")
# Display a calculation with an f-string
robot.screen.print(f"Sum: {5 + 3}")
# Display the robot's battery capacity with an f-string
robot.screen.print(f"Battery: {robot.get_battery_level()}%")
f-Strings – ฝังตัวแปรและนิพจน์ลงในข้อความโดยตรง
f”{value}”– แสดงตัวแปร นิพจน์ หรือการเรียกฟังก์ชันภายในสตริง
การจัดรูปแบบตัวเลขในสตริง f – ควบคุมวิธีการแสดงค่าตัวเลข
:.xf– กำหนดจำนวนตำแหน่งทศนิยมที่จะแสดงround– ปัดเศษตัวเลขให้เหลือจำนวนทศนิยมที่กำหนด:,– เพิ่มเครื่องหมายจุลภาคเป็นตัวคั่นหลักพัน:.x%– แปลงเลขฐานสิบเป็นเปอร์เซ็นต์โดยมีทศนิยม x ตำแหน่ง:#x– จัดรูปแบบตัวเลขเป็นเลขฐานสิบหก:b– จัดรูปแบบตัวเลขเป็นเลขฐานสอง
การรวมสตริง – การรวมข้อความและค่า
f”{value}”– รวมสตริงและตัวแปรในนิพจน์เดียว+ operator– เชื่อมต่อสตริงด้วยตนเองโดยมีการแปลงประเภทเพิ่มเติม
เมธอดของสตริง – เปลี่ยนตัวพิมพ์ใหญ่เล็กของข้อความ
การตรวจสอบสตริงย่อย ––ทดสอบการมีอยู่หรือตำแหน่งของข้อความ
in– ตรวจสอบว่าคำนั้นมีอยู่ในสตริงหรือไม่startswith()– ตรวจสอบว่าสตริงเริ่มต้นด้วยค่าที่กำหนดหรือไม่endswith()– ตรวจสอบว่าสตริงลงท้ายด้วยค่าที่กำหนดหรือไม่
ลำดับการหลีกเลี่ยง – จัดรูปแบบเอาต์พุตด้วยอักขระพิเศษ
การจัดรูปแบบตัวเลขในสตริง f#
f-strings ช่วยให้สามารถควบคุมจำนวนหลักทศนิยม การปัดเศษ ตัวคั่นหลักพัน และอื่นๆ ได้อย่างแม่นยำ โดยใช้ตัวระบุรูปแบบต่อไปนี้:
Fixed Decimal Places#
.xf จะแสดงตัวเลข
Usage:
.xf
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
จำนวนตำแหน่งทศนิยมที่จะแสดง |
# Display pi with 2 decimal places
pi = 3.1415926535
robot.screen.print(f"Pi: {pi:.2f}") # Output: Pi: 3.14
Rounding Numbers#
round ปัดเศษตัวเลขที่อยู่นอกสตริง f หรือภายใน {}
Usage:
round(number, x)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
ตัวเลขที่จะปัดเศษ |
|
จำนวนตำแหน่งทศนิยมที่จะปัดเศษ |
# Display a value rounded to only 2 decimal places
value = 5.6789
robot.screen.print(f"{round(value, 2)}") # Output: 5.68
Thousands Separator#
, แทรกเครื่องหมายจุลภาคเป็นตัวคั่นหลักพันเพื่อให้ตัวเลขขนาดใหญ่สามารถอ่านได้ง่ายขึ้น
Usage:
,
พารามิเตอร์ |
คำอธิบาย |
|---|---|
ตัวระบุรูปแบบนี้ไม่มีพารามิเตอร์ |
# Display a large number separated with commas
number = 1234567
robot.screen.print(f"{number:,}") # Output: 1,234,567
Percentage#
.x% จะแปลงค่าทศนิยมเป็นเปอร์เซ็นต์
Usage:
.x%
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
จำนวนตำแหน่งทศนิยมที่จะแสดง |
# Display a converted decimal to a percentage
value = 0.875
robot.screen.print(f"{value:.1%}") # Output: 87.5%
Hexadecimal#
.#x แปลงตัวเลขเป็นเลขฐานสิบหก
Usage:
.#x
พารามิเตอร์ |
คำอธิบาย |
|---|---|
ตัวระบุรูปแบบนี้ไม่มีพารามิเตอร์ |
# Convert 255 to hexadecimal
number = 255
robot.screen.print(f"{number:#x}") # Output: 0xff
Binary#
b แปลงตัวเลขเป็นเลขฐานสอง (ฐาน 2)
Usage:
b
พารามิเตอร์ |
คำอธิบาย |
|---|---|
ตัวระบุรูปแบบนี้ไม่มีพารามิเตอร์ |
# Convert 3 to binary
robot.screen.print(f"Binary: {3:b}") # Output: 11
การรวมสตริง#
คุณสามารถรวม (หรือต่อ) สตริงได้โดยใช้สองวิธี:
Using f-strings#
ด้วย f-strings คุณสามารถฝังตัวแปรไว้ภายใน {} ได้โดยตรง
# Display an answer based on the given emotion
emotion = "good"
robot.screen.print(f"I'm {emotion}, you?")
+ Operator#
คุณสามารถรวมสตริงด้วยตนเองโดยใช้ตัวดำเนินการ + ได้
หมายเหตุ: ข้อมูลที่ไม่ใช่สตริงจะต้องถูกแปลงเป็นสตริงก่อนโดยใช้ str()
# Display the x and y values
x = 10
y = 20
robot.screen.print("X: " + str(x) + ", Y: " + str(y))
เมธอดสตริง#
Python มีเมธอดในตัวสำหรับแก้ไขและตรวจสอบสตริง
upper#
upper แปลงตัวอักษรทั้งหมดในสตริงให้เป็นตัวพิมพ์ใหญ่
Usage:
upper()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
message = "vexcode"
robot.screen.print(message.upper()) # Output: VEXCODE
lower#
lower แปลงตัวอักษรทั้งหมดในสตริงให้เป็นตัวพิมพ์เล็ก
Usage:
lower()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
message = "VEXCODE"
robot.screen.print(message.lower()) # Output: vexcode
การตรวจสอบสตริงย่อย#
in#
in เป็นคีย์เวิร์ดที่ส่งค่าบูลีนกลับมาเพื่อระบุว่าสตริงย่อย (คำหรือส่วนของข้อความ) นั้นมีอยู่ในสตริงหลักหรือไม่
True– คำนั้นมีอยู่ในสตริงFalse– คำนั้นไม่มีอยู่ในสตริง
message = "Hey everyone!"
if "Hey" in message:
robot.screen.print("Hello!")
startswith#
startswith ส่งคืนค่าบูลีนที่ระบุว่าสตริงเริ่มต้นด้วยค่าที่กำหนดหรือไม่
True– คำนั้นเป็นคำแรกของสตริงFalse– คำนั้นไม่ได้ขึ้นต้นสตริง
Usage:
startswith(substring)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
ส่วนย่อยที่จะตรวจสอบที่จุดเริ่มต้นของสตริง |
message = "AIM Robot"
if message.startswith("AIM"):
robot.screen.print("AIM first!")
endswith#
endswith ส่งคืนค่าบูลีนที่ระบุว่าสตริงลงท้ายด้วยค่าที่กำหนดหรือไม่
True– คำนั้นเป็นคำสุดท้ายของสตริงFalse– คำนั้นไม่ใช่คำสุดท้ายของสตริง
Usage:
endswith(substring)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
ส่วนย่อยของสตริงที่จะตรวจสอบที่ส่วนท้ายของสตริง |
message = "AIM Robot"
if message.endswith("Robot"):
robot.screen.print("Robot last!")
ลำดับการหลบหนี#
ลำดับการหลีกเลี่ยง (Escape sequences) คืออักขระพิเศษที่ใช้ภายในสตริงเพื่อจัดรูปแบบข้อความที่แสดงผล โดย มีให้ใช้งานเฉพาะ ในคอนโซลเท่านั้น
New Line#
\n จะย้ายข้อความขึ้นบรรทัดใหม่เมื่อพิมพ์
# Display text on two lines
print("First line\nSecond line")
Tab Spacing#
\t จะแทรกช่องว่างแท็บระหว่างคำหรือตัวเลข
# Display the quantity of barrels
quantity = 2
print("Barrels:\t", quantity)