tôi mới build forum cho ae lập trình mong ae vào ủng hộ và trải nghiệmMấy hôm lướt diễn đàn thấy anh em kêu gọi lập box của các ngôn ngữ cho dễ thảo luận, mà tôi hóng mãi không thấy ai lập.
Nay mạn phép xin được lập ra thread này để cho những người đang học về python hay có hứng thú với python có nơi để thảo luận trao đổi với nhau.
Nghiêng về hệ thống, chịu tải hoặc cloud thì chơi golang với rustlập trình hướng mạng thì python với golang cái nào nhiều dữ liệu hơn hả thím ?
Câu hỏi 1 về global: khi mà cái PyCharm nó không suggest cho mình là đọc được biến từ bên ngoài hàm .cho em hỏi về biến trong python với. Khi nào thì dùng từ khóa global trong hàm con. Với có python có phân biệt biến tham chiếu và biến tham trị không
Trong hàm con nếu biến được mark là global thì khi ra khỏi hàm, vẫn có thể sử dụng được biến đó.cho em hỏi về biến trong python với. Khi nào thì dùng từ khóa global trong hàm con. Với có python có phân biệt biến tham chiếu và biến tham trị không
Thanks thím. Về biến tham chiếu với tham trị. Mình từng bị lỗi khi khai biến list b=a, khi mình thay đổi list a thì list b cũng thay đổi theo nên mình muốn tìm hiểu kỹ lý doTrong hàm con nếu biến được mark là global thì khi ra khỏi hàm, vẫn có thể sử dụng được biến đó.
Nên hạn chế sử dụng global cho đỡ rối flow và dễ debug, nếu dev quản lý được thì cũng thoải mái mà dùng thôi.
Ví dụ:
View attachment 43079
Tham chiếu và tham trị là khái niệm của C, C++ và các ngôn ngữ khác, bạn nên quên đi để học Python cho đỡ rối. ^^
Mình muốn tạo 1 biến global để 2 3 hàm sử dụng chung thì nên xử lý sao cho đẹp hả thím.Trong hàm con nếu biến được mark là global thì khi ra khỏi hàm, vẫn có thể sử dụng được biến đó.
Nên hạn chế sử dụng global cho đỡ rối flow và dễ debug, nếu dev quản lý được thì cũng thoải mái mà dùng thôi.
Ví dụ:
View attachment 43079
Tham chiếu và tham trị là khái niệm của C, C++ và các ngôn ngữ khác, bạn nên quên đi để học Python cho đỡ rối. ^^
Cái này bác tìm hiểu về deep copy và shallow copy nhé. Khá thú vị. ^^Thanks thím. Về biến tham chiếu với tham trị. Mình từng bị lỗi khi khai biến list b=a, khi mình thay đổi list a thì list b cũng thay đổi theo nên mình muốn tìm hiểu kỹ lý do
Thì bác cứ dùng thôi. ^^Mình muốn tạo 1 biến global để 2 3 hàm sử dụng chung thì nên xử lý sao cho đẹp hả thím.
À, lỗi này là do nó dùng con trỏ, cả 2 thằng đều trỏ đến cùng vùng nhớ. Nếu bạn thay đổi phần tử ở b thì a cũng sẽ đổi.Thanks thím. Về biến tham chiếu với tham trị. Mình từng bị lỗi khi khai biến list b=a, khi mình thay đổi list a thì list b cũng thay đổi theo nên mình muốn tìm hiểu kỹ lý do
Lý thuyết phần này ở mục nào vậy thím? Để e nghiên cứuÀ, lỗi này là do nó dùng con trỏ, cả 2 thằng đều trỏ đến cùng vùng nhớ. Nếu bạn thay đổi phần tử ở b thì a cũng sẽ đổi.
mình chỉ nhớ 1 câuLy
Lý thuyết phần này ở mục nào vậy thím? Để e nghiên cứu
seaborn hân hạnh tài trợ chương trình nàycó ai học Scipy để làm data visualization không ạ? mỗi mấy cái numpy, pandas với matplotlib mà vẫn dốt (
cũng có dùng seaborn vài lần í. dốt do não ít neuron thôi thím ) mà thím nhắc mới nhớ ra là đã dùng nhé ))seaborn hân hạnh tài trợ chương trình này
Scipy thì mình cũng ko để ý mấy, có lúc nào cần làm mấy cái lq xử lý tín hiệu thì dùng. Bình thường dùng numpy đã đủcũng có dùng seaborn vài lần í. dốt do não ít neuron thôi thím ) mà thím nhắc mới nhớ ra là đã dùng nhé ))
Thanks thím. Về biến tham chiếu với tham trị. Mình từng bị lỗi khi khai biến list b=a, khi mình thay đổi list a thì list b cũng thay đổi theo nên mình muốn tìm hiểu kỹ lý do
cảm ơn bác. trc em coi mấy khoa online để làm tools. giờ đang học kỹ lại.Bác đã học python ở đâu mà chưa biết cái này, đây là kiến thức introductory trong python, nếu tài liệu bác dạy đến list mà không nói cái này thì em nghĩ bác nên học tài liệu khác đi.
Nếu bác dự tính kiếm cơm bằng python và muốn vững về nó thì học cuốn Learning Python và Programming Python đều của Mark Lutz, đảm bảo nền móng vững chắc.
Nếu bác đang cần học python gấp để xong task hoặc là không có nhu cầu sâu về python thì có thể học những cuốn sách khác
Về câu hỏi của bác: In python, everything is an object. Kể cả function cũng là object, số nguyên 1 cũng là object, module import vào cũng là object. Tên biến trong python luôn là một reference tới một object nào đó. Object có immutable và mutable, và list là mutable object. Khi a = [1, 2, 3] thì a sẽ là reference tới một vùng nhớ trong máy tính biểu thị cái object list [1,2,3]. Khi b=a nghĩa là b cũng là reference tới cái list đã khai báo lúc đầu luôn, do vậy khi bác thay đổi cái list đó thì lúc print(b) và print(a) đều thấy đã thay đổi, vì dưới memory chỉ có 1 cái list từ đầu tới cuối thôi.
Bác biết C++ thì nói nhanh là a, b giống như reference trong C++ bác cũng hiểu rồi, nhưng mà bác đăng câu hỏi như vậy thì em nghĩ tài liệu bác đang xài để học python nó có vấn đề, hoặc là bác đang muốn tìm hiểu python nhanh nên chưa nắm được cái model của nó.