一、python2与python3的区别:
python2:1、臃肿且源码的重复率比较多
2、语法不一致,其中掺杂了c、php、java等的一些陋习
python3:几乎是重构后的源码,比较规范、清晰、优美。
二、python的分类
1、编译型:可以一次性将所有的程序编译成二进制文件,然后进行运行。
优点:运行速度快。
缺点:开发效率低,不能跨平台。
2、解释型:程序运行的时候是一句一句进行编译之后运行的。
优点:开发效率高,可以边写边调试,而且可以跨平台。
缺点:运行速度慢。
python是一门动态的解释型语言。
三、运行第一个Python程序
使用ctrl+r打开命令输入窗口,输入python+文件路径。
解决中文问题:在Python2中的最开始写#-*- encoding:utf-8 -*-这是因为python2的默认编码方式为ASCII,python3的默认编码方式为:utf-8
四、变量
将一些运算中间结果存在内存当中,以便在后续的程序中使用。
规则:
1、数字、字母、下划线的任意组合
2、不能以数字开头
3、不能是python中的关键字。
4、可描述性。即变量名可以告诉写代码以外的人其意思。
5、使用驼峰体。即开头字母大写例如:NumberOfStudents;或使用下划线:例如number_of_students
6、不要使用中文,不要用拼音,不能太长。
例如:
a1b='hkjdh' -_='sdkjhsdha' #不行,这个变量名里有横线不符合变量名的命名规则
五、变量的赋值:
name1='marke' name2='mary' name1='joun' print(name1,name2)
开始的时候将marke赋值给name1,将mary赋值给name2,之后又将joun赋值给name1改变了name1的指向,此时输出的name1的值是joun,name2的值是mary。
age1=12 age2=age1 age3=age2 age2=3 print(age1,age2,age3)
六、常量
python中的常量全部是用大写字母表示的。
例如:
ID='hjkhkjh' BIR_OF_CHINA=1949
七、字符串
1、在python中字符串都要加引号,单引号和双引号都可以没有区别。
2、字符串的运算(可以拼接用+,可以用*)
例如:
s1='111' s2='458' s3=s1+s2+'aaa' print(s1,type(s1)) print(s2,type(s2)) print(s3,type(s3)) name='坚强' s=name*8 print(s) #ps:type用于查看变量类型
八、input接收到的全部是字符串
例如:
name=input('请输入姓名:') age=input('请输入年龄:') print(name,age,type(name),type(age)) s1='我的名字是:' s2='我的年龄是:' print(s1+name,s2+age)
九、格式化输出 %占位符 (s:str字符串,d:数字)
name=input('请输入姓名:') age=int(input('请输入年龄:')) job=input('请输入工作:') hobbie=input('请输入爱好:') msg=''' --------------info of %s------------ Name:%s Age:%d Job:%s Hobbie:%s -----------------end-------------------- '''%(name,name,age,job,hobbie) print(msg)
在程序里面已经存在有%的时候用如下方法运行之后会报错
msg='我叫%s,今年%d,我学习进度为10%'%('不高兴',18) print(msg)
这种情况下只要在10%之后再加上一个%就可以运行成功
msg='我叫%s,今年%d,我学习进度为10%%'%('不高兴',18) print(msg)
int(str)可以将字符串转换成数字,但是只能讲全部由数字组成的字符串转换成数字。
十、if语句
例如:
1、
if 2==2: print('大保健') print(666)
2、
if name==1: print('恭喜你答对了') else: print('你猜错了')
3、
name=input("姓名:") if name=='xf': if 2>1: print('meinv') else: print('一般般') else: print('输入正确的名字:')
if的嵌套:
name=input("姓名:") if name=='xf': if 2>1: print('meinv') else: print('一般般') else: print('输入正确的名字:')
十一、if...elif...
例如:
score=int(input("分数:")) if score>=100: print('超神') elif score>=90: print('A') elif score>=80: print('B') elif score>=70: print('C') elif score>=60: print('及格') else: print('不及格')
十二、while语句:跳出循环的方法:1、改变条件。2、使用break语句。
while 条件:
结果
flag=Ture print('111') while flag: print('李白') print('丑八怪') flag=False print('666') print(flag) print(222)
break:在while中如果遇到break就会立马跳出循环。
count=1 while True: print(count) count+=1 if count==101: break print(666)
continue语句:与break有区别,continue是在跳出当前循环之后返回到while开始下一次循环(相当于在循环中加入一个充当循环底层的假象让编译器误以为while语句已经运行完毕)
count=0 while count<10: count+=1 if count==7: continue else:print(count)
while else:是在while正常循环且中间没有被break打断就会执行else。
count=1 while count<=100: count+=1 if count>58 and count%2==1: print(count) else: print(count+1)
此时就是中间没有break打断程序,是从上之下顺序运行的
count=1 while count<=100: print(count) count+=1 if count>58 and count%2==1: break else: print(count)
count=0 while False: count+=1 print('loop',count) if count==3: break else: print('循环正常执行完成!')
此时只能输出1~58,当count==59时满足if里面的条件,执行break跳出循环。