ฉันกำลังพยายามคิดว่าใครจะแปลงการแสดงสตริงของสตริงไบต์เป็นประเภทสตริงไบต์จริงได้อย่างไร ฉันไม่คุ้นเคยกับ Python มากนัก (แค่แฮ็กมันเพื่อช่วยเพื่อน) ดังนั้นฉันจึงไม่แน่ใจว่ามีวิธี "แคสต์" ง่ายๆ หรือไม่ (เหมือนที่ Java ที่รักของฉันมี ;) ) โดยพื้นฐานแล้วฉันมีไฟล์ข้อความซึ่งมีเนื้อหาเป็นสตริงไบต์:
b'\x03\xacgB\x16\xf3\xe1\\v\x1e\xe1\xa5\xe2U\xf0g\x956#\xc8\xb3\x88\xb4E\x9e\x13\xf9x\xd7\xc8F\xf4'
ขณะนี้ฉันอ่านในไฟล์นี้ดังนี้:
aFile = open('test.txt')
x = aFile.read()
print(x) # prints b'\x03\xacgB\x16\xf3\xe1\\v\x1e\xe1\xa5\xe2U\xf0g\x956#\xc8\xb3\x88\xb4E\x9e\x13\xf9x\xd7\xc8F\xf4'
print(type(x)) # prints <class 'str'>
ฉันจะทำให้ x เป็นประเภท <class 'bytes'>
ได้อย่างไร ขอบคุณสำหรับความช่วยเหลือใด ๆ
แก้ไข: เมื่อได้อ่านคำตอบด้านล่าง ฉันคิดว่าฉันอาจจะจำกัดคำถามมากเกินไป ฉันขอโทษสำหรับเรื่องนั้น สตริงอินพุตไม่จำเป็นต้องอยู่ในรูปแบบ python byte-string (เช่น ด้วย b และเครื่องหมายคำพูด) อาจเป็นเพียงแค่สตริงไบต์ธรรมดา:
\x03\xacgB\x16\xf3\xe1\\v\x1e\xe1\xa5\xe2U\xf0g\x956#\xc8\xb3\x88\xb4E\x9e\x13\xf9x\xd7\xc8F\xf4
หากสิ่งนี้ทำให้ง่ายขึ้นหรือเป็นการฝึกฝนที่ดีขึ้น ฉันสามารถใช้สิ่งนี้ได้