ยินดีต้อนรับกลับ.
จนถึงตอนนี้ เราได้เรียนรู้เกี่ยวกับจำนวนเต็ม ทศนิยม สตริง และค่าบูลีน
เรามาลองผูกสิ่งเหล่านั้นเข้าด้วยกัน
ลองนึกภาพ Facebook ของคุณ
คุณคิดว่า Facebook ทำงานอย่างไรเมื่อพูดถึงโปรไฟล์ของคุณ?
พวกเขาจะได้ สมมุติว่า ตัวแปรที่เรียกว่าชื่อ
และนี่จะมีชื่อของคุณ
แล้วพวกเขาก็อาจจะมีตัวแปรตามอายุของคุณ
เอาเป็นว่า 50
ฉันไม่ใช่ 50 จริงๆ แต่ฉันแสร้งทำเป็นในกรณีนี้ ดังนั้นฉันฟังดูฉลาดขึ้น
และจากนั้น สมมติว่าสถานะความสัมพันธ์
เราจึงมีสถานะความสัมพันธ์บน Facebook เช่นกัน
และสำหรับตอนนี้ สมมติว่าโสด
นั่นคือโปรไฟล์ Facebook ของฉันที่นั่น
ทีนี้ ถ้าเราต้องการเปลี่ยนสิ่งนั้น สมมุติว่าสถานะความสัมพันธ์ของฉันเปลี่ยนจากโสดกลายเป็นเรื่องซับซ้อนในทันใด
นั่นเป็นการแก้ไขที่ง่าย
เราก็จะทำสถานะความสัมพันธ์เท่ากับ
มันซับซ้อน.
และจำไว้ว่า เนื่องจากอัญประกาศเดี่ยว เราจะต้องทำแบ็กสแลช
มันคือ.
ที่ซับซ้อน.
และตอนนี้ถ้าฉันพิมพ์สถานะความสัมพันธ์ของฉัน
คุณจะเห็นว่ามีการอัปเดตเป็น
มันซับซ้อน.
ฉันไม่โสดแล้ว
ไชโย!
แต่นี่เป็นเรื่องง่ายสวย
มาทำอะไรที่ซับซ้อนกว่านี้กัน
และนี่จะเป็นการออกกำลังกายที่สนุกสนาน
มาสร้างโปรแกรมทายอายุกันเถอะ
ลองใช้วิธีการป้อนข้อมูลที่เราเคยเห็นมาก่อน
จำไว้ว่าวิธีการป้อนข้อมูลช่วยให้เราพิมพ์อะไรบางอย่างได้
ในนี้และรับเป็นอินพุตเพื่อให้เราสามารถกำหนดให้กับตัวแปรได้
สมมุติว่าตัวแปรนี้จะเป็นปีเกิด และนั่นจะเท่ากับค่าที่จะถาม
เมื่อไหร่หรือปีอะไร?
เกิด.
จากนี้ไป ฉันต้องการให้คุณหยุดวิดีโอชั่วคราวและพยายามแก้ปัญหานี้ด้วยตัวเอง
ทำยังไงให้จบโปรเจกต์นี้ มีคนถามคุณว่าเกิดปีอะไร?
คุณจะพิมพ์ใส่หูของคุณ แล้วมันจะพิมพ์ว่าอายุของคุณเป็นแบบไหน
ดังนั้นหยุดวิดีโอชั่วคราว
ลองและแก้ปัญหานี้ด้วยตัวคุณเอง
โปรดทราบว่ามีเคล็ดลับเล็กน้อยที่นี่
ดังนั้น หากคุณติดขัด ให้ลองใช้ Google และค้นหาว่าปัญหาคืออะไร
อีกครั้งที่ส่วนหนึ่งของการเป็นโปรแกรมเมอร์กำลังพยายามแก้ปัญหาเหล่านี้ซึ่งคุณไม่ทราบคำตอบ
ไม่เป็นไร.
ให้ฉันแสดงวิธีแก้ปัญหาของฉันให้คุณดู
เรามีปีเกิดที่นี่ซึ่งเราจะเก็บเป็นตัวแปร
และตอนนี้เรากำลังจะคำนวณ H ผมจะบอกว่า H เท่ากับดี มันจะเท่ากับปีปัจจุบัน
สมมุติว่า 2019 และ 2019 ที่นี่จะถูกลบออกจากปีเกิดที่คุณป้อน
เข้าเรื่องกันเลย
แล้วเราจะบอกว่า พิมพ์อายุของคุณคือ
และเราต้องการใช้สตริง F ที่นี่
ผมจะบวก F ตรงนี้
แล้วพูดง่ายๆ
อายุ.
ถ้าฉันเรียกใช้สิ่งนี้
ฉันเข้าใจ?
คุณเกิดปีอะไร?
ฉันเกิดปี 2529
อืม.
เราได้รับข้อผิดพลาด และหากคุณลองทำเช่นนี้ คุณอาจพบข้อผิดพลาดนี้
เราได้รับสิ่งที่เรียกว่าข้อผิดพลาดประเภท และมีข้อผิดพลาดมากมายที่คุณจะได้รับใน Python
อีกครั้ง เรามีส่วนที่เกี่ยวกับข้อผิดพลาด ดังนั้นอย่าเครียดกับมันมากเกินไป
แต่ถ้าคุณอ่านที่นี่ มันบอกว่าตัวถูกดำเนินการที่ไม่รองรับประเภท SW สี่ลบด้วย int และสตริง
อืม.
มาลองแก้ปัญหานี้กัน
ดูเหมือนว่าเรากำลังใช้เครื่องหมายลบกับจำนวนเต็มและสตริง
ขอผมพิมพ์ปีเกิดที่นี่นะครับ.
ถ้าฉันเรียกใช้สิ่งนี้และเข้าสู่ปี 1986 ฉันได้รับสตริงคลาสและนี่คือ gotcha เล็กน้อยเพราะสิ่งที่อินพุตทำคือการขออินพุตจากคุณ
แต่อินพุตนั้นที่ฉันเขียนไว้ในปี 1986 ซึ่งถูกแปลงเป็นสตริงและกำหนดให้เกิด ปี.
นั่นหมายความว่าเรากำลังพยายามลบ
ตัวเลขหรือสตริงจากตัวเลข
แล้วเราจะแก้ปัญหานี้อย่างไร?
คุณต้องเปลี่ยนมันเป็นจำนวนเต็ม
และนี่คือสิ่งที่เราเห็นก่อนหน้านี้
สิ่งที่เราต้องทำคือแปลงค่านี้เป็นจำนวนเต็มโดยใช้ฟังก์ชัน int
เลยลองทำดู
ถ้าฉันลบสิ่งนี้และคลิกเรียกใช้
ผมว่าปี 1986
แล้วดูว่าคุณอายุ 33 ปี
เราได้สร้างโปรแกรมที่สามารถบอกอายุของคุณตามปีที่คุณเกิดได้
เรื่องนี้อาจเป็นเรื่องยากสำหรับคุณ แต่มันสอนแนวคิดที่สำคัญในการเขียนโปรแกรม
นั่นคือ บางครั้งคุณกำลังจัดเก็บข้อมูลลงในประเภทข้อมูลต่างๆ และบางครั้งคุณต้องการข้อมูลประเภทต่างๆ
เหล่านั้นเพื่อโต้ตอบกัน
ดังนั้น คุณจะเห็นปัญหามากมายที่คุณต้องแปลงประเภทข้อมูล
และนี่เป็นเรื่องธรรมดามากที่คุณรับอินพุตที่เป็นสตริง แล้วคุณแปลงเป็นค่าจำนวนเต็ม
เพื่อให้คุณสามารถดำเนินการทางคณิตศาสตร์ได้
และนั่นเป็นเหตุผลว่าทำไม ถ้าคุณจำได้ เราได้ให้รายการประเภทข้อมูลทั้งหมดของเราใน Python ประเภทข้อมูลพื้นฐาน
และทั้งหมดนั้นเป็นสีน้ำเงิน เพราะแต่ละประเภทคือการกระทำเป็นฟังก์ชันที่เราสามารถใช้ได้
ตัวอย่างเช่น ฉันแปลงปีเกิดเป็นจำนวนเต็ม แต่ฉันสามารถแปลงเป็นทศนิยมได้เช่นกัน
และถ้าฉันเรียกใช้สิ่งนี้ มันก็จะยังทำงานอยู่
เนื่องจาก Python รู้ดีอยู่แล้ว เราจึงสามารถใช้จำนวนเต็มและทศนิยมในการดำเนินการทางคณิตศาสตร์ได้ แต่คุณจะเห็นได้ว่ามันถูกแปลงเป็นทศนิยมแล้ว
ทีนี้ ถ้าเราแปลงค่านี้เป็นบูลีน
และฉันคลิกเรียกใช้
อายุของคุณคือปี 2018
มันน่าสับสนจริงๆ ใช่ไหม
นั่นเป็นเพราะสิ่งนี้กลายเป็นจริง
และภายใต้ประทุน python ทำสิ่งที่แปลก ๆ โดยที่ค่าจริงถูกแปลงเป็นค่าหนึ่ง
เพราะบูลีนจำได้ว่าเป็นหนึ่งหรือศูนย์
จริงหรือเท็จ.
ไม่เป็นไร.
หวังว่านี่จะไม่ทำให้คุณสับสนมากนัก
เป็นสิ่งที่จะต้องพบเจอตลอดหลักสูตร
ดังนั้นไม่ต้องกังวล
เราจะฝึกฝนมากขึ้นเรื่อยๆ
อย่างไรก็ตาม ฉันหวังว่าคุณจะฝึกฝนสิ่งนี้สักหน่อยเพื่อทำความเข้าใจจริงๆ ว่าเกิดอะไรขึ้น
เพราะถึงแม้ว่านี่จะเป็นโค้ดสองสามบรรทัด หลักการที่เราใช้ที่นี่ เราจะใช้ทั่วทั้งฐานโค้ดที่ใหญ่ขึ้นและใหญ่ขึ้น
เอาเป็นว่าเจอกันใหม่ตอนหน้าค่ะ
ลาก่อน.