Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีเพิ่มอักขระใน python


ในบทช่วยสอนนี้ เราจะมาดูวิธีการต่างๆ ในการเพิ่มตัวละครใน Python

การพิมพ์ดีด

มาดูกันก่อนว่าจะเกิดอะไรขึ้นหากเราเพิ่ม int ให้กับ char โดยไม่พิมพ์ดีด

ตัวอย่าง

## str initialization
char = "t"
## try to add 1 to char
char += 1 ## gets an error

หากคุณรันโปรแกรมข้างต้น มันจะให้ผลลัพธ์ดังต่อไปนี้ -

TypeError          Traceback (most recent call last)
<ipython-input-20-312932410ef9> in <module>()
      3
    4 ## try to add 1 to char
----> 5 char += 1 ## gets an error
TypeError: must be str, not int

หากต้องการเพิ่มอักขระใน Python เราต้องแปลงเป็น จำนวนเต็ม และเพิ่ม 1 แล้วโยนผลลัพธ์ จำนวนเต็ม เป็น ถ่าน . เราสามารถทำได้โดยใช้วิธีการในตัว ord และ chr .

ตัวอย่าง

## str initialization
char = "t"

## converting char into int
i = ord(char[0])

## we can add any number if we want
## incrementing
i += 1

## casting the resultant int to char
## we will get 'u'
char = chr(i)

print(f"Alphabet after t is {char}")

หากคุณรันโปรแกรมข้างต้น มันจะให้ผลลัพธ์ดังต่อไปนี้ -

Alphabet after t is u

ไบต์

มีอีกวิธีหนึ่งในการเพิ่มอักขระโดยใช้ ไบต์ .

  • แปลง str เป็น ไบต์ .
  • ผลลัพธ์จะเป็นอาร์เรย์ที่มีค่า ASCII ของอักขระทั้งหมดของสตริง
  • เพิ่ม 1 ให้กับอักขระตัวแรกของ ไบต์ที่แปลงแล้ว . ผลลัพธ์จะเป็น int.
  • แปลง int เป็น อักขระ .

ตัวอย่าง

## str initialization
char = "t"

## converting char to bytes
b = bytes(char, 'utf-8')

## adding 1 to first char of 'b'
## b[0] is 't' here
b = b[0] + 1

## converting 'b' into char
print(f"Alphabet after incrementing ACII value is {chr(b)}")

หากคุณรันโปรแกรมข้างต้น มันจะให้ผลลัพธ์ดังต่อไปนี้ -

Alphabet after incrementing ACII value is u

หากเราต้องสตริงและแปลงเป็น ไบต์ จากนั้นเราสามารถเพิ่มอักขระใดก็ได้ที่เราต้องการ มาดูตัวอย่างกันเลย

ตัวอย่าง

## str initialization
name = "tutorialspoint"

## converting char to bytes
b = bytes(name, 'utf-8')

## adding 1 to 'a' char of 'b'
## 'a' index is 6
b = b[6] + 1

## converting 'b' into char
print(f"name after incrementing 'a' char is tutori{chr(b)}lspoint")

หากคุณรันโปรแกรมข้างต้น มันจะให้ผลลัพธ์ดังต่อไปนี้ -

name after incrementing ‘a’ char is tutoriblspoint

ฉันหวังว่าคุณจะเข้าใจแนวคิดนี้ดี หากคุณมีข้อสงสัยเกี่ยวกับบทช่วยสอน โปรดระบุในส่วนความคิดเห็น มีความสุขในการเข้ารหัส :)