Python-Day1
2018-06-18 00:11:13来源:未知 阅读 ()
一、Python介绍
Python是一种面向对象的解释型计算机程序设计语言,由荷兰人吉多·范罗苏姆(Guido van Rossum)于1989年发明,第一个公开发行版发行于1991年。
目前Python主要应用领域:
- 云计算: 云计算最火的语言, 典型应用OpenStack
- WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django
- 科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas
- 系统运维: 运维人员必备语言
- 金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测
- 图形GUI: PyQT, WxPython,TkInter
设计定位:
- Python的设计哲学是“优雅”、“明确”、“简单”。
- Python开发人员尽量避开不成熟或者不重要的优化。
- Python是完全面向对象的语言。
- Python本身被设计为可扩充的。
控制语句:
Python的优缺点:
先看优点
- Python的定位是“优雅”、“明确”、“简单”,所以Python程序看上去总是简单易懂,初学者学Python,不但入门容易,而且将来深入下去,可以编写那些非常非常复杂的程序。
- 开发效率非常高,Python有非常强大的第三方库,基本上你想通过计算机实现任何功能,Python官方库里都有相应的模块进行支持,直接下载调用后,在基础库的基础上再进行开发,大大降低开发周期,避免重复造轮子。
- 高级语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节
- 可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工 作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就几乎可以在市场上所有的系统平台上运行
- 可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
- 可嵌入性————你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。
再看缺点:
- 速度慢,Python 的运行速度相比C语言确实慢很多,跟JAVA相比也要慢一些,因此这也是很多所谓的大牛不屑于使用Python的主要原因,但其实这里所指的运行速度慢在大多数情况下用户是无法直接感知到的,必须借助测试工具才能体现出来,比如你用C运一个程序花了0.01s,用Python是0.1s,这样C语言直接比Python快了10倍,算是非常夸张了,但是你是无法直接通过肉眼感知的,因为一个正常人所能感知的时间最小单位是0.15-0.4s左右,哈哈。其实在大多数情况下Python已经完全可以满足你对程序速度的要求,除非你要写对速度要求极高的搜索引擎等,这种情况下,当然还是建议你用C去实现的。
- 代码不能加密,因为PYTHON是解释性语言,它的源码都是以名文形式存放的,不过我不认为这算是一个缺点,如果你的项目要求源代码必须是加密的,那你一开始就不应该用Python来去实现。
- 线程不能利用多CPU问题,这是Python被人诟病最多的一个缺点,GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。关于这个问题的折衷解决方法,我们在以后线程和进程章节里再进行详细探讨。
二、代码练习
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #Author:YST 4 5 name = "你好,世界" 6 print(name)
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #Author:YST 4 5 Name = input("name:") 6 Age = int(input("age:")) #integer 7 Job = input("job:") 8 Salary =int(input("salary:")) 9 10 """info = ''' 11 ------- info of {name} ----- 12 Name:{name} 13 Age:{age} 14 Job:{job} 15 Salary:{salary} 16 '''.format(name=Name, 17 age=Age, 18 job=Job, 19 salary=Salary) 20 print(info)""" 21 """ 22 info2 = ''' 23 -------- info of %s-------- 24 name:%s 25 age:%d 26 job:%s 27 salary:%d 28 '''%(Name,Name,Age,Job,Salary) 29 print(info2)""" 30 info3 = ''' 31 -----info of {0}----- 32 name:{0} 33 age:{1} 34 job:{2} 35 salary:{3} 36 '''.format(Name,Age,Job,Salary) 37 print(info3)
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #Author:YST 4 import getpass 5 6 _username = 'YST' 7 _password = 'asd123' 8 username = input("username:") 9 #password = getpass.getpass("password:") 暗码 10 password = input("password:") 11 12 if _username == username and _password == password: 13 print("Welcom user {name} login...".format(name = username)) 14 else: 15 print("Invalind username or password!")
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #Author:YST 4 '''count = 0 5 while True: 6 print("count:",count) 7 count = count + 1 #count + =1 8 if count == 1000: 9 break 10 ''' 11 '''for i in range(10): 12 print("loop ",i) 13 ''' 14 15 ''' 16 #打印0 2 4 6 8 17 for i in range(0,10,2): 18 print("loop ",i) 19 ''' 20 21 #打印0 3 6 9 22 for i in range(0,10,3): 23 print("loop",i)
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #Author:YST 4 5 age_of_oldboy = 56 6 7 8 for i in range(3): 9 guess_age = int(input("guess age:")) 10 if guess_age == age_of_oldboy : 11 print("Yes,you got it!") 12 break 13 elif guess_age > age_of_oldboy: 14 print("think smaller...") 15 else: 16 print("think bigger!") 17 18 19 else: 20 print("you have tried too many times...Fuck off")
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #Author:YST 4 5 age_of_oldboy = 56 6 7 count = 0 8 while count <3: 9 guess_age = int(input("guess age:")) 10 if guess_age == age_of_oldboy : 11 print("Yes,you got it!") 12 break 13 elif guess_age > age_of_oldboy: 14 print("think smaller...") 15 else: 16 print("think bigger!") 17 18 count = count + 1 19 if count == 3: 20 countine_confirm = input("do you want to keep guessing..?(Y/N)") 21 if countine_confirm != 'N': 22 count = 0 23 else: 24 print("you have tried too many times...Fuck off")
错误代码 guess游戏循环 for 无法继续进行 3次后 回车无法进行下一个循环
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #Author:YST 4 age_of_YST = 23 5 6 for i in range(0,3): 7 guess_age = int(input("guess age: ")) 8 if guess_age == age_of_YST: 9 print("Yes,you got it!") 10 break 11 elif guess_age > age_of_YST: 12 print("think samller...") 13 else: 14 print("think bigger...") 15 if i == 2: 16 i = 0 17 countine_confirm = input("Do you want to keep guessing?(y/n)") 18 if countine_confirm != 'n': 19 continue 20 i=1 21 else: 22 print("you have tried too many times...Fuck off!")
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash