Python入门1
什么是Python
Python是一种计算机程序设计语言。是一种动态的、面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。
Python是一种解释型脚本语言,可以应用于以下领域:
Web 和 Internet开发
科学计算和统计
教育
桌面界面开发
软件开发
后端开发
什么是编译型语言、解释型语言、脚本语言
1、编译型语言
编译型语言写得程序在执行之前,需要借助一个程序,将高级语言编写的程序翻译成计算机能懂的机器语言,然后,这个机器语言就能直接执行了,也就是我们常见的(exe文件)。
2、解释型语言
解释型语言的程序不需要编译,节省了一道工序,不过解释型的语言在运行的时候需要翻译,每个语句都是执行的时候才翻译,对比编译型语言,效率比较低。通俗来讲,就是借助一个程序,且这个程序能试图理解编写的代码,然后按照编写的代码中的要求执行。
3、脚本语言
脚本语言也是一种解释型语言,又被称为扩建的语言,或者动态语言不需要编译,可以直接使用,由解释器来负责解释。
脚本语言一般都是以文本形式存在,类似于一种命令。
4、通俗理解编译型语言和解释型语言
同行讨论编译型语言和解释型语言的时候,这么说过,编译型语言相当于做一桌子菜再吃,解释型语言就是吃火锅。解释型的语言执行效率低,类似火锅需要一边煮一边吃。
发展历程
自从20世纪90年代初Python语言诞生至今,它已被逐渐广泛应用于系统管理任务的处理和Web编程。
Python的创始人为荷兰人吉多·范罗苏姆 (Guido van Rossum)。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC 语言的一种继承。之所以选中Python(大蟒蛇的意思)作为该编程语言的名字,是取自英国20世纪70年代首播的电视喜剧《蒙提.派森干的飞行马戏团》(Monty Python’s Flying Circus)。
ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido 认为是其非开放造成的。Guido 决心在Python 中避免这一错误。同时,他还想实现在ABC 中闪现过但未曾实现的东西。
就这样,Python在Guido手中诞生了。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix shell和C的习惯。
Python 已经成为最受欢迎的程序设计语言之一。自从2004年以后,python的使用率呈线性增长。Python 2于2000年10月16日发布,稳定版本是Python 2.7。Python 3于2008年12月3日发布,不完全兼容Python 2。 2011年1月,它被TIOBE编程语言排行榜评为2010年度语言。
由于Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。例如卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。众多开源的科学计算软件包都提供了Python的调用接口,例如著名的计算机视觉库OpenCV、三维可视化库VTK、医学图像处理库ITK。而Python专用的科学计算扩展库就更多了,例如如下3个十分经典的科学计算扩展库:NumPy、SciPy和matplotlib,它们分别为Python提供了快速数组处理、数值运算以及绘图功能。因此Python语言及其众多的扩展库所构成的开发环境十分适合工程技术、科研人员处理实验数据、制作图表,甚至开发科学计算应用程序。2018年3月,该语言作者在邮件列表上宣布Python 2.7将于2020年1月1日终止支持。用户如果想要在这个日期之后继续得到与Python 2.7有关的支持,则需要付费给商业供应商。
Linux中Python3.6的安装
1.官网下载源码安装包 点我直达官网下载页面
2.将安装包解压到/opt目录
3.首先安装编译过程中需要的依赖包:gcc,zlib,zlib-devel,openssl-devel(需要提前配置好yum源)
4.进入解压的安装包进行编译
安装
5.添加python3的命令到环境变量中
6.测试是否安装成功
第一个python程序
变量的赋值
Python的数据类型
1.整型(int)
2.浮点型(float)
3.字符串型(str)
4.bool型(只有两个值:True False 非0即真)
5.数据类型的切换
6.在内存中删除一个变量
Python的输入与输出
python2.x中,
input( ):只支持数值类型
raw-input( ):支持数值类型和字符串类型
如果希望输入密码时不回显,则需要借助第三方模块
**
python3.x中没有raw_input( )
input( )即可接收任意数据类型
**
如果接收到的数值要进行比较的时候,一定要转换为同种数据类型
python格式化输出
%s代表字符串,%d代表整形
%f:代表浮点型
%.xf(x:2 3 4 5)保留小数点后多少位
整型总占位,不够位数的前面补0
百分数的实现
python中的算术运算符
python2.x中
python3.x中
a += 1表示 a = a + 1
pycharm快捷键
- pycharm设置界面(ctrl+alt+s)
- 修改菜单栏字体
- 修改代码栏字体
- 修改python解释器位置
- 如何快速创建文件(alt+insert)
- 格式化python代码, 使得风格好看(ctrl+alt+l)
- 如何修改指定功能的快捷键
- 如何撤销代码的修改(ctrl+z)
- 如何取消撤销的代码的修改(ctrl+shift+z)
- 快速重命名(shift+F6)
- 快速注释代码(ctrl+/)
- 快速取消注释代码(ctrl+/)
if判断语句
if 要判断的条件:
条件成立的时候,要做的事情
…
else:
条件不成立的时候,要做的事情
…
示例:定义一个变量,判断年龄是否满18岁
if 要判断的条件:
条件成立的时候,要做的事情
…
elif 要判断的条件:
…
elif 要判断的条件:
…
else:
条件不成立的时候,要做的事情
…
示例:定义一个变量,score,
当90<score<=100时成绩为A
当80<score<=90时成绩为B
当score<=80时成绩为C
第三方模块random的用法
导入python第三方模块
import random
random.randint(12,20) #返回[12,20]之间的整数
16
random.randint(12,20)
14
random.randint(12,20)
18
random.randint(12,20)
17
random.randint(12,12) #结果永远是12
12
random.randint(12,12)
12
random.randint(20,12) #下限必须小于上限
示例:
从控制台输入要出的拳 —石头(1)/剪刀(2)/布(3)
电脑随即出拳
比较胜负
石头 胜 剪刀
剪刀 胜 布
布 胜 石头
逻辑运算符号
and
条件1 and 条件2
两个条件同时满足,就返回True
只要有一个条件不满足,就返回False
or
条件1 or 条件2
两个条件只要有一个满足,就返回True
两个条件都不满足的时候,就返回False
示例1:判断闰年?
用户输入年份year, 判断是否为闰年?
- year能被4整除但是不能被100整除 或者 year能被400整除, 那么就是闰年;
示例2.随机选择一个三位以内的数字作为答案。用户输入一个数字,程序会提示大了或是小了,直到用户猜中
- 输入年、月,输出本月有多少天。合理选择分支语句完成设计任务。
输入样例1:2004 2
输出结果1:本月29天
输入样例2:2010 4
输出结果2:本月30天
2.用 if 判断输入的值是否为空?如果为空,报错Error。
- 根据用于指定月份,打印该月份所属的季节。
**提示: 3,4,5 春季 6,7,8 夏季 9,10,11 秋季 12, 1, 2 冬季