# 1、使用while循环输入 1 2 3 4 5 6     8 9 10
a = 0
b =1
while b:
    a+=1
    if a == 7:
        print('  ',end = '')
        continue
    elif a == 11:
        break

    print (a,' ',end = '')
print('')
# 2、求1-100的所有数的和    
a = 0
i = 0
while a <101:
    c = lambda a: a+1
    a= c(a)
    i = a+i
print(i)
# 3、输出 1-100 内的所有奇数
for i in range(1,101):
    print(i if i%2 else'','\t',end = '')
    print('' if i%20 else'\n',end = '')
else:print()
# 4、输出 1-100 内的所有偶数
for i in range(1,101):
    print('' if i%2 else i,'\t',end = '')
    print('' if (i-1)%20 else'\n',end = '')
else:print()
# 5、求1-2+3-4+5 ... 99的所有数的和
a = 0
for i in range(1,100):
    a+= i if i%2 else 0-i
else:print(a)
# 6、用户登陆(三次机会重试
times = 3
while times:
    if input('用户名') == 'aaa' and input('密码') == 'bbb':
        print('登录成功')
        break
    else:
        times -=1
        if times:
            print('再来一次')
else:print('三次机会用完了')
View Code

 

宏观上:

python2源码不统一,不标准,更新混乱,重复代码太多

python3统一的标准,去掉了重复的代码

想着弄个google上网,没弄成

很多内容出自:

www.cnblogs.com/jin-xin/articles/7459977.html#title-0-1-0

1自我介绍

大家好,我叫阿河,来自山东。 中专学历。在这之前搞的C,主要用于单片机的过程函数的编写。后来为了弄清楚网上的p2p数据,就接触了python。加了一些QQ群,在群里有网络视频,就开始了自学。感觉自己可以从中层起步进行学习,可是学了4天,出问题了。还是从基础开始吧。

2python介绍

先介绍一下python吧,

2.1出生与应用

发明者Guido van Rossun 89年冬创作。当时他在阿姆斯特丹,这个地方好像是从连云港出发的丝绸之路的终点啊。

2017年,也就是去年7月TIOBE排行第四。百度了一下,有培训机构以TIOBE为关键词做软文的。

主要的应用我不管,我只是想学来做爬虫,做数据自动做电算处理数据用。

资料显示在1.0里就有了匿名函数,map(用指定函数对目标组进行批量加工,这里的加工是指,把批量的石头加工成相等批量的雕像)filter(过滤,就是个有色眼睛,只看美女,对目标人群里的美女全都要电话号,做成电话清单,然后就一个一个的打电话骚扰他们)reduce(还没学,不知道做什么的)

时隔6年,2000年国庆后的半个月2.0出来了,增加了内存回收。就是仓库里的各种雕像,如果没有挂价格牌子的都杂碎,杂碎到成为空气,如果要做新雕像就把空气变成石头,再进行雕刻成雕像(对象)。

到了04年,非典的那几年吧,又是冬天11月底(那时候只有光棍节,没有天猫节)更新为2.4,主要的是在谋个领域等价于windows XP的Django诞生了,这下就可大发了(发达了的意思)

后来就是10年党建的那几天,出了2.7。08年出3.0对三方库做了优化。

2.2与别的区别

编译:解释

静态:动态

强类:弱类

编译:去饭店点好菜,菜上完了,开始吃。下交来吃的时候,就快速的把上次吃过的菜再次上桌一次:

解释:到了饭店,点一个菜,上一个菜,吃一个菜,在吃饱之前的过程中有很多情况哦。

动态:价格标签可以挂在雕像上,可以挂在多个雕像上,也可以挂在美女身上。这里的标签只是一个占位符,(占个位子而已)

静态:价格标签可以挂在雕像上,那就是雕像的价格签,不能挂在美女身上了。这里的标签可以是指针,可以指向空,如果非空,就只能指向一个8*10KG(一个10KG是一个位)的美女,如果给一个16*10KG的美女,他就强制把美女劈开,只收一半,只有在标签+1向下一个8*10KG的内存地址时,才能找到另半个美女。(开始没想那么多,写到这里感觉鲜血淋漓)

2.3优缺点

发明这个python的时候就是想让新手好了入门的。

第三方的开发代码很多的,可以拿来手,就不用自己去写了,说是人生苦短,我用python.

低层的物理管理到主板的电平信号什么的不用管了,只管写想法就好了的。

如果硬件环境变了,那是解释器要做了,不用我们管。所以在移植方面,没的说了。

如果想用python驱动并控制硬件,就和C扩大加工,就好了

如果在C里面想省事,也可以用python生成机器码,加到C里面进行调用。

批量化数据处理时,会比别的慢一点,可以影响也不大的。

代码是明文的。别人也可以看,我就看过别人的,一个p2p网站的。

GIL在执行解释器的时候,操作系统生成了一个任务,解释器就在这一个任务里完成,不会要去找操作器要第二个任务的生成,可能是怕不同步吧,等吧,会有三方库去尝试弄他的。

2.4编译器的各类

分类:cpython(C语言识别的字节码,官方主要推的解释器) 

         jypython(支持java可识别的字节码,由java转换成0101的二进制代码)

          ironpython 

         其它python

          pypy(先编译,一次性编译成字节码,然后给操作系统,但是开发效率相对慢)

 

 3部分基础知识

3.1常量

比如 兀

3.2注释

方便自己回忆,方便别人看懂

单行注释#

多行注释“”“”“” 或‘’‘’‘’

3.3基础数据类型

数字的类型,用于计算。

代码的类型,用于执行代码。

字符的呢,‘100’与100(int)怎么区别呢?

用type()来识别

python2:

             32位机,int取值-2**31到2**31-1

             64位机,int取值-2**63到2**63-1

             超限的是long类型

python3:都是int的类型

 

字符串:str 用引号括在内的都是字符串(重复上一行,ctrl+d)

             可以进行相加运算(拼接)

             不可以相减

布儿型:True False

 

 

 

3.4运行代码

3.5解释器

3.6内容编码

编译器是对01的机器语言进行驱动cpu的,而我们写的是代码(字母),所在要把字母转换成01的格式,p2的转换方式是每8个位就弄到CPU处理一下,p3就不一样了,他是4个8位处理一下,就是unicode,但是如果占位少的字母也用4个字就多浪费了3倍的存储数据的空间。所以就出现了utf-8.通过二次读取,确定字母的占位数,取出了所有的占位数,给cpu去处理。

3.7变量

变量:将一些运行的中间结果暂存到内存中,以便后续代码调用。在房间里弄出一个雕像,在上面挂个牌子。

1/必须由字母,数字,下划线任意组合,且不能数字开头

2/不能是python中的关键字

3/变量具有可描述性

赋值:就是造个标签,然后挂在房间的一个雕像上面

3.8程序交互

input()内置函数,用他得到的内容只能是字符的格式 每一个内置函数,后面还有好几十个呢

3.9格式化输出

在字符的输入的时候可以加一些占茅坑的,自习课占位子的,%s男的女的都可以,%d就只能是女的了。

如果说,不想让别人在你边上,想多占人坑,怎么办?你占了坑,没有人来用,学校是不允许的,

这说说吧,你同学本来是帮你占位子的,可是现在他想用坑怎么办,只能是让第三个人来帮他了

3.10基本运算符

算数运算 + - * /  % ** //

比较运算 == != <> > < >= <= 

赋值运算 = += -= *= /= %= **= //= 

逻辑运算 and or not

成员运算 in not in 

身份运算

位运算

3.11流程控制

诸葛亮给了三个锦囊,在有问题的时候就打开一个,这就是诸葛的流程控制,你想当诸葛亮吗?

还有哦,晚上让驴拉磨,天不这亮不能停,累不死不能停,这也算流程控制。

4python的环境

1/到官网去下载,安装 ,配置环境变量(windows10的更舒服一些)

5练习   

 

# 1、使用while循环输入 1 2 3 4 5 6     8 9 10
a = 0
b =1
while b:
    a+=1
    if a == 7:
        print('  ',end = '')
        continue
    elif a == 11:
        break

    print (a,' ',end = '')
print('')
# 2、求1-100的所有数的和    
a = 0
i = 0
while a <101:
    c = lambda a: a+1
    a= c(a)
    i = a+i
print(i)
# 3、输出 1-100 内的所有奇数
for i in range(1,101):
    print(i if i%2 else'','\t',end = '')
    print('' if i%20 else'\n',end = '')
else:print()
# 4、输出 1-100 内的所有偶数
for i in range(1,101):
    print('' if i%2 else i,'\t',end = '')
    print('' if (i-1)%20 else'\n',end = '')
else:print()
# 5、求1-2+3-4+5 ... 99的所有数的和
a = 0
for i in range(1,100):
    a+= i if i%2 else 0-i
else:print(a)
# 6、用户登陆(三次机会重试
times = 3
while times:
    if input('用户名') == 'aaa' and input('密码') == 'bbb':
        print('登录成功')
        break
    else:
        times -=1
        if times:
            print('再来一次')
else:print('三次机会用完了')