Introduction to python 20110917

812 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
812
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Introduction to python 20110917

  1. 1. Giới thiệu ngôn ngữ lập trình Python<br />Hoàng Nam Hảihai@mana.vn<br />
  2. 2. 5’ tự giới thiệu<br />
  3. 3. Hoàng Nam Hải<br /><ul><li>Master of Art in Business IT
  4. 4. Coder/programmer: 17 năm
  5. 5. Mobile application: 2 năm
  6. 6. Founder & CEO của công ty ManaTech (mana.vn)
  7. 7. Chuyên sâu trong 3 lĩnh vực:
  8. 8. Web Crawler
  9. 9. P2P streaming
  10. 10. J2ME application
  11. 11. Language: Java2năm, Python 2 năm, C#6 năm , Vb.Net, Perl, Pascal ...</li></li></ul><li>Ứng dụng Sóng Vàng<br />Cung cấp thông tin dịch vụ, địa điểm thay thế cho cuốn danh bạ Những trang vàng. <br />Ngôn ngữ lập trình: C++<br />Chạy trên các thiết bị sử dụng hệ điều hành SamSung Bada<br />Giải nhì cuộc thi lập trình Bada<br />
  12. 12. Cổng thông tin OneApp cho Android<br /><ul><li>Ngôn ngữ lập trình: Java
  13. 13. Chạy tốt với các thiết bị Android cấu hình thấp</li></li></ul><li>Ứng dụng Zing Me client<br />Truy cập nhiều tiện ích trên mạng xã hội Zing Me.Ưu điểm của phần mềm: <br /><ul><li>Giao diện thân thiện
  14. 14. Tốc độ cao
  15. 15. Chi phí kết nối (3G/GPRS) thấp
  16. 16. Tính năng đa dạng
  17. 17. Ngôn ngữ lập trình: Java/J2ME</li></li></ul><li>Ứng dụng World Cup 2010<br />Cung cấp mọi thông tin xoay quanh World Cup 2010: tin tức, lịch thi đấu, bảng xếp hạng, tường thuật trận đấu...<br /><ul><li>Ngôn ngữ lập trình: Java/J2ME
  18. 18. Chạy tốt trên các dòng máy điện thoại cấu hình thấp</li></li></ul><li>5’ Khán giả tự giới thiệu<br />
  19. 19. <ul><li>Python, Java, C#, C++...
  20. 20. PHP, Javascript, Flash ...
  21. 21. Json, XML, CSS, Web service, Html ...</li></li></ul><li>Ngôn ngữ lập trình Python<br />Why?<br />Tour? (Cưỡi ngựa xem hoa)<br />How to begin?<br />
  22. 22. Why Python?<br />Why not Java? C#? C++? PHP? ...<br />Why not SQL? Oracle? ...<br />Why? Why? Why?<br />
  23. 23. For fun<br />For $,$<br />
  24. 24. Dễ học<br />Cấu trúc, cú pháp đơn giảnThư viện nhiều, chất lượng tốt<br />json, http, xml, zlib imap, pop3, snmp, sqlite, mysql twisted, django, cherrypy ...<br />Đa năng<br />Server: Web app, chat server, mail server, monitor service, các app tích hợp dịch vụ, Client: Phần mềm GUI, nghiên cứu dữ liệu...<br />Code một tí là chạy được...<br />
  25. 25. Free<br />Đa hệ<br />Hiệu năng cao (high-perf)<br />Network, memory, serialize/deserialize<br />Hiệu quả cao <br />productivity, maintain, deploy<br />
  26. 26. Ai dùng Python?Dự án nào dùng Python?<br />
  27. 27. Web site: Google, Google App Engine, Youtube, Google Web search....<br />System: NASA, IBM, HP, Intel, Cisco...<br />Desktop: Dropbox, Miro player<br />Mobile phone: Nokia, Microsoft (Windows CE)<br />P2P: Bittorrent<br />
  28. 28. Tour – Cưỡi ngựa xem hoa<br />
  29. 29. http://python.org<br />
  30. 30. http://docs.python.org<br />
  31. 31. x = 34 - 23 # A comment.<br /> y = “Hello”# Another one.<br /> z = 3.45 <br />if z == 3.45 or y == “Hello”:<br /> x = x + 1<br /> y = y + “ World”# String concat.<br />print x<br />print y<br />
  32. 32. Whitespace<br />Multiple assignment<br />Document string<br />Sequence types, list comprehension<br />Functions: define, default value, order of args, used as data type<br />Json, Send mail, Twisted, Cherrypy<br />
  33. 33. Whitespace<br />Whitespace is meaningful in Python: especially indentation and placement of newlines. <br />Use a newline to end a line of code. <br />Use when must go to next line prematurely.<br />No braces { } to mark blocks of code in Python… Use consistent indentation instead. <br />The first line with less indentation is outside of the block.<br />The first line with more indentation starts a nested block<br />Often a colon appears at the start of a new block. (E.g. for function and class definitions.)<br />
  34. 34. Comment & document<br />Start comments with # – the rest of line is ignored.<br />Can include a “documentation string” as the first line of any new function or class that you define.<br />The development environment, debugger, and other tools use it: it’s good style to include one.<br />defmy_function(x, y):<br /> “““This is the docstring. This function does blah blah blah.”””# The code would go here...<br />
  35. 35. Multiple Assignment<br />Một lúc có thể gán nhiều giá trị<br />Một hàm có thể trả về nhiều giá trị<br />
  36. 36. Xử lý danh sách: dễ & nhanh<br />
  37. 37. Xử lý danh sách: dễ & nhanh (2)<br />
  38. 38. Xử lý danh sách: dễ & nhanh (3)<br />
  39. 39. Xử lý danh sách: dễ & nhanh (4)<br />
  40. 40. Dùng Function như một object<br />
  41. 41. Download và cài đặt thư viện<br />
  42. 42. Easy install<br />Example 1. Install a package by name, searching PyPI for the latest version, and automatically downloading, building, and installing it:<br />easy_install SQLObject <br />Example 2. Install or upgrade a package by name and version by finding links on a given "download page":<br />easy_install -f http://pythonpaste.org/package_index.html SQLObject <br />Example 3. Download a source distribution from a specified URL, automatically building and installing it:<br />easy_install http://example.com/path/to/MyPackage-1.2.3.tgz<br />
  43. 43. JSON<br />
  44. 44. Gmail Send<br />
  45. 45. Tài liệu tự học<br />
  46. 46.
  47. 47. Q&A<br />Hoàng Nam Hải<br />http://mana.vnEmail: hai@mana.vn<br />

×