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

ตรวจสอบว่าสตริงที่กำหนดเป็นตัวระบุที่ถูกต้องใน Python . หรือไม่


สมมติว่าเรามีสตริงที่แสดงถึงตัวระบุ เราต้องตรวจสอบว่าถูกต้องหรือไม่ มีเกณฑ์ไม่กี่อย่างที่เราตัดสินได้ว่ามันถูกต้องหรือไม่

  • ต้องขึ้นต้นด้วยขีดล่าง '_' หรืออักษรตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก
  • ไม่มีช่องว่าง
  • อักขระที่ตามมาทั้งหมดหลังจากตัวแรกต้องไม่ประกอบด้วยอักขระพิเศษใดๆ เช่น $, #, % เป็นต้น

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

ดังนั้น หากอินพุตเป็นเหมือน id ="_hello_56" ผลลัพธ์จะเป็น True

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • ถ้าอักขระตัวแรกใน s ไม่ใช่ตัวอักษรและไม่ได้ขีดล่าง ดังนั้น
    • คืนค่าเท็จ
  • สำหรับแต่ละอักขระ ch ใน s[จากดัชนี 1 ถึงปลาย] ทำ
    • ถ้า ch ไม่ใช่ตัวอักษรและตัวเลขและ ch ไม่ได้ขีดล่าง ดังนั้น
      • คืนค่าเท็จ
  • คืนค่า True

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

โค้ดตัวอย่าง

def solve(s):
   if not s[0].isalpha() and s[0] != '_':
      return False

   for ch in s[1:]:
      if not ch.isalnum() and ch != '_':
         return False

   return True

id = "_hello_56"
print(solve(id))

อินพุต

"_hello_56"

ผลลัพธ์

True