1、python2\python3的区别:python2\python3的区别: 一、代码重复,python2代码重复功能复用,夹杂其他语言的部分,不规范 python3进行整合,简洁优美 编译型:一次性将全部代码编译成二进制,然后再运行。 缺点:开发效率低,不能跨平台

解释型:程序开始执行时,将代码一行一行解释成二进制,执行。 缺点:开发效率低

python有点: 1、开发效率高,由第三方库直接调用,比如php接不可以了 2、可移植性 3、可扩展、可嵌入性高:加入c语言速度执行快

python的种类: cpython:使用最广泛,先转换成c的字节码,到系统 jpython:转换为java的字节码,到系统 其他语言python:都是这样,转换为对应的字节码 pypy:代码一次性全部转换成字节码,然后到系统

二、python2使用的是ascii、不识别中文: python3使用的是utf-8字符 三、python2有long int i 3没有 四、python2中print可以不加()但是3要加() 五、2的是raw_input等于3的input

2、变量:变量: 将程序中运算的结果充到内存,方便后续调动: 不能数字开头,不能是python的关键字,数字字母下划线任意组成 变量要具有克描述性 变量不要使用中文 变量不能过长 a = 1 b =2 ..... 都可以 3、常量:常量: 一直不变的量:π、×××号 全部大写的变量是常量,放到文件最上面 OPENT_WORK = 323423,这就是常量 4、注释:注释: 单行用# 多行""" """或者''' '''

5、基础数据类型: int 数字类型 计算。加减乘除等算法

str:字符串 用引号引起来的就是字符串 type(对象)是什么数据类型 用处:储存简单的少量数据 大范围用双引号,小范围用单引号 多行可以使用三引号,比如商品列表,多换行 可以加+字符串的拼接、和乘* str字符串*数字类型

布尔值、 true和flase 0为flase 其他的都为True 6、input 输入: 与用户交互,input出来的是字符串 input(“描述信息”)

7、格式化输出: %占位符 %s 字符串 %d 数字 如果要是用%一定在加%转义%% 如果要将字符串转换为数字可以使用int(变量)包裹一下,这里面的字符串必须全是数字

name = input("name") age = input("age") job = input("job") hobby = input("hobby")

meg="""------------ info of %s ----------- Name : %s Age : %d job : %s Hobbie: %s ------------- end ----------------- """%(name,name,int(age),job,hobby) print(meg)

8、if语句:

if 条件: 结果 这里是一个tab键的举例或者四个空格在结果这里 两个等于是比较==、一个=是赋值

if 条件: 满足条件执行代码 elif 条件: 上面的条件不满足就走这个 elif 条件: 上面的条件不满足就走这个 elif 条件: 上面的条件不满足就走这个
else: 上面所有的条件不满足就走这段

9、while a = 1 flag = True while flag: print(a) a = a+1 if a ==5050: flag = False

注意:这里的flag是用于两个循环当中跳出停止 break:跳出和他同列的循环 continue:结束本次的循环,但是还会执行

总结:一个题目进行整合测试:

name = "lxf"
password = 123456 count = 0 Y = 'yes' N = "no" while count <3: user = input("请输入名字:") mima = int(input("请输入密码:")) if user==name and mima==password: print("密码输入正确,进入登陆界面") break else: print("输入错误:再输入一次") count +=1 if count ==3: con = input("是否在需要三次机会:请输入yes/no:") if con == Y: count =0 elif con == N: print("等待下次重新登陆在试吧!!!") break

 练习题:
 
 #联系题一

a = [1,2,3,4,5,6,7,8,9,10] for i in a: if i ==7:continue print(i)

#联系题二、 a = 1 b = 0 while a <=100: b = b + a print(b) a +=1

#联系题三、 a = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16] #....一直到100太多了写不了了 for i in a: if i % 2 ==1: print(i)

#联系题四: a = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]#。。。。写不了了太多了 for i in a: if i % 2 ==0: print(i)

#联系题五、 num = 0 for i in range(100): if i % 2 ==0: num = num - i else: num = num + i print(num)

10、逻辑运算符: and or not

()》not 》 and 》 or 优先级 1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8 1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

11、编码: 电信号01010101010101010 电脑: a'siic码128 7位标识一个字节 升级到8位一个字节256 2的8次方 00000001 ===一个字符 万国码啊: unicode包括所有国家 16字节表示一个字符 00000001 00000001 ==一个字符 2的16次方

改变:4个字节表一个字符就是三十二次方 11111111 11111111 11111111 11111111 表示一个字节 2的32次方 资源浪费:

升级utf-8:最少用8位: 英文8位一个字节,00000001 欧洲16位两个字节,00000001 00000001 亚洲24位三个字节,00000001 00000001 00000001

单位的转换: 8bit ==1bytes 1024bytes ==1kb 1024kb ==1mb 1024mb == 1G

utf-16 最少16位一个字符

基础数据类型: dict字典 dict:{'name':'xxx','age':13} print (dict['name']) 可以打印出xxx 键值可以是数字和字符串,列表等