Python初相识
Python简介
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
- Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。
- Python 是交互式语言: 这意味着,您可以在一个Python提示符,直接互动执行写你的程序。
- Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
- Python 是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏。
Python 特点
-
1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。
-
2.易于阅读:Python代码定义的更清晰。
-
3.易于维护:Python的成功在于它的源代码是相当容易维护的。
-
4.一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。
-
5.互动模式:互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。
-
6.可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。
-
7.可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。
-
8.数据库:Python提供所有主要的商业数据库的接口。
-
9.GUI编程:Python支持GUI可以创建和移植到许多系统调用。
-
10.可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。
Python2与Python3的主要区别
-
1.python2.x:源码不规范,源码重复较多。不支持中文,中文支持需要添加内容。
-
2.python3.x:Python代码定义的更清晰。源码清晰,优美,简单。且支持中文
Python2.x与python3.x处于相交发展,预计2020年,由Python3.4以上版本完全取代。
Python的类型
- 编译型
优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。
缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件。代表语言:c
- 解释型
优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护。
缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。 代表语言:python
Python的种类
- CPython
当我们从下载并安装好Python 3.6后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python
就是启动CPython解释器。
CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。
- IPython
IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。
CPython用>>>
作为提示符,而IPython用In [
序号
]:
作为提示符。
- PyPy
PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。
绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解。
- Jython
Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。
- IronPython
IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。
通过网络交互,来确保各个语言的独立性。
第一句Python
print ('hello everyone')#打印括号里的内容
变量
#变量:就是将一些数据的中间结果暂存起来,以便后续使用 #_*_encoding:utf-8 _*_ 在python2.x里使用中文字符 x=1+2+3+4+5 print(x) y=(x*20)/4 z=(y*5)/2 print(y,z)
变量定义的规则:
- 变量只能由数字,字母,下划线任意组合
- 不能以数字开头
- 不能是python中的关键字 ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
- 变量要有描述性
- 变量不能使用中文
- 变量不能过长
- 变量不能使用拼音
- 变量官方推荐 驼峰 下划线
常量
age1=12 age2=age1 age3=age2 age2=26 print(age1,age2,age3)#赋值变化 #常量:一直不变的量。python中本来没有常量 name='alex' NAME='wusir' #python中的常量:将常量全部大写 #往往常量会放在文件前面
注释
就像小时候读的文言文下面的注释。在编程中就是对代码的解释说明,帮助自己或者别人理解,在重点的地方,难以理解的地方
单行注释#
多行注释:三引号"""注释内容""" 或者双引号""注释内容""
数据类型
人类给机器划分的一些数据:数字类型,字符类型 bool值 对与错
- 数字类型:
#float 浮点型 i=3.1415 #int 整型 i=36 i2=100 #用来计算或计数
- 字符串类型
s1='alxe' s2="alxe李哥" #单双引号配合使用 s3="I'm taibai" #print(s3) msg="""床前明月光, 疑是地上霜""" print(msg)
- #字符串拼接与乘法
s1='alxe' s2="alxe李哥" print(s1+s2) s3='奋斗' print(s3*8)
- bool值
print(True) print(False) print(2>1)
用户输入
#用户需要输入用户名密码(qq登陆)此时就需要输入input
#print('18')
#print(18)
""name=input('请输入姓名:') age=input('请输入年龄') print(type(age))#判断此数据的数据类型 print('此用户的姓名是'+ name +',' + '此用户的年龄是'+age)""" """name=input('请输入银行卡号:') age=input('请输入密码:') print(type(age)) print('此用户的银行卡号是'+ name +',' + '此用户的密码是'+age)""" name = input('请输入姓名:') age = input('请输入年龄:') tops = input('请输入身高:') BWH = input('请输入三围:') print(type(age),type(tops),type(BWH)) print('此用户的姓名是'+name + ',' + '此用户的年龄是'+age+','+'此用户的身高是 '+tops+','+'此用户的三围是'+BWH) name = input('请输入用户名:') password = input('请输入密码:') print('此用户的用户名是'+name+',' + '此用户的密码密码是'+password)
if语句五种结构
#第一种结构:单独if #print(111) #if 3>4: # print(222) #print(333) #print (111) #if 1>2: # print(sb) #print(666) #print(666) #if 1+2<3: # print(222) #print(000) #print (111) #if 1>2: # print(sb) #print(666) #print(666) #if 1+2<3: # print(222) #print(000)
#第二种结构:if else 结果只有一种 #choice=int(input('请输入你的大小:')) #if 0<choice<4: # print('你猜的是小') #else: # print('你猜的是大') choice=int(input('明天会不会下雨:')) if 1<choice<9: print('你说对了') else: print('你说错了')
#第三种结构:多个选择选一个 if elif elif ...可以有多个条件 choice=int(input('请输入你猜的数字:')) if choice==3: print('我请你吃饭') elif choice==4: print('我请你看电影') elif choice==6: print('我请你大保健') #设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;如果比66小, #则显示猜测的结果小了;只有等于66,显示猜测结果正确。 choice=int(input('请输入你的大小:')) if 66<choice: print('你猜的大了') elif 66>choice: print('你猜的小了') else: print('结果正确')
#第四种结构:多个选择选一个 if elif elif ...可以有多个条件 #choice=int(input('请输入你猜的数字:')) #if choice==3: # print('我请你吃饭') #elif choice==4: # print('我请你看电影') #elif choice==6: # print('我请你大保健') #else: # print('这都没猜对,你个辣鸡') choice=int(input('请选择的一条路:')) if choice==1: print('天堂') elif choice==2: print('地狱') elif choice==3: print('九死一生') elif choice==4: print('你去死吧!!!') """如果⼩于10, 提⽰⼩屁孩, 如果⼤于10, ⼩于 20, 提⽰青春期叛逆的⼩屁孩. 如果⼤于20, ⼩于30. 提⽰开始定性, 开始混社会的⼩ 屁孩⼉, 如果⼤于30, ⼩于40. 提⽰看老⼤不⼩了, 赶紧结婚⼩屁孩⼉. 如果⼤于40, ⼩ 于50. 提⽰家⾥有个不听话的⼩屁孩⼉. 如果⼤于50, ⼩于60. 提⽰⾃⼰⻢上变成不听 话的老屁孩⼉.如果⼤于60, ⼩于70. 提⽰活着还不错的老屁孩⼉. 如果⼤于70, ⼩于 90. 提⽰⼈⽣就快结束了的⼀个老屁孩⼉. 如果⼤于90以上. 提⽰. 再⻅了这个世界.""" choice=int(input('请输入你的年龄:')) if choice<10: print('小屁孩') elif 10<choice<20: print('青春期叛逆的⼩屁孩') elif 20<choice<30: print('开始定性, 开始混社会的⼩ 屁孩⼉') elif 30<choice<40: print('看老⼤不⼩了, 赶紧结婚⼩屁孩⼉') elif 40<choice<50: print('家⾥有个不听话的⼩屁孩⼉') elif 50<choice<60: print('⾃⼰⻢上变成不听 话的老屁孩⼉') elif 60<choice<70: print('活着还不错的老屁孩⼉') elif 70<choice<90: print('⼈⽣就快结束了的⼀个老屁孩⼉') else: print('再⻅了这个世界')
if 嵌套 username=input('请输入用户名:') password=input('请输入密码:') """if username=='alex': if password=='123': print('登陆成功') else: print('密码输入错误') else: print('用户名输入有误') #提⽰⽤户输入⿇花藤. 判断⽤户输入的对不对. 如果对, 提⽰真聪明, 如果不对, 提⽰你 是傻逼么 """username=input('请输入:') """if username =='⿇花藤': print('真聪明') else: print('是傻逼吗')""" username=input('请输入用户名:') password=input('请输入密码:') if username=='yangjie': if password=='1qaz2wsx': print('登陆成功') else: print('密码输入错误') else: print('用户名密码输入错误')