• Python基础1


    一:python的由来和发展

      1989年,为了打发圣诞节假期,Guido开始写Python语言的编译器。Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flying Circus。他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。

      2017年7月的TIOBE排行榜,Python已经占据第四的位置, Python崇尚优美、清晰、简单,是一个优秀并广泛使用的语言。Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等

     二:Python的种类

    CPython

    当我们从Python官方网站下载并安装好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采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。

    绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点

    Jython

    Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

    IronPython

    IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

    三:Python2与Python3的区别

    python2:

    1,源码都含有php,Java,C,等语言的规范陋习,

    2,重复代码特别多.

    python3:

    源码很规范,清晰,简单,符合python的宗旨.

    四:解释型与编译型语言的区别及优缺点

    (1)解释型:解释性语言的程序不需要编译,省了道工序,解释性语言在运行程序的时候才翻译 。每个语句都是执行的时候才翻译,这样解释性语言每执行一次就要翻译一次,执行效率比较低。比如:python,php。它的优点就是开发速度快,可以跨平台。缺点是执行效率慢。

    (2)编译型:编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,就不用再进行翻译了。比如C,C++等它的优点就是执行效率快,缺点就是开发速度慢,不能跨平台。

    五:变量

    变量:将运算的中间结果暂存到内存,以便后续程序调用.

    变量的规则:

    1,变量是由数字,字母,下划线,任意组合。

    2,变量不能以数字开头。

    3,变量不能是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']

    4,变量名不能由中文表示。

    六:注释

    便于别人,或者自己理解.单行注释:#多行注释:'''被注释内容'''  """被注释内容"""

    七: 基础数据类型(初识).

    数字:int

    取值范围:32位 64位在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647

    在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,-9223372036854775808~9223372036854775807主要用于计算:+-*/ ** % //.....

    字符串:str

    在Python中,凡是用引号引起来的,全是字符串

    布尔值:bool

    八:用户交互.input

    name = input('请输入名字:')
    age = input('请输入年龄:')
    print(type(age))
    hobby = input('请输入你的爱好:')
    print('我叫'+name,'今年'+age,'爱好'+hobby)

    python3  input;python2  raw_input

    九:if语句

    第一种:

    if 条件:
      结果

    if 3 > 2:
        print(666)
    print(777)

    第二种

    name = input('请输入名字:')
    if name == 'alexsb':
        print(name)
    else:print('请重新输入')

    第三种

    num_guess = input('请输入数字')
    if num_guess == '1':
        print('去吃饭')
    elif num_guess == '3':
        print('请你喝酒')
    elif num_guess == '5':
        print('大宝剑')
    else:
        print('你傻不傻....')

    第四种

    name = 'alex' 
    if name == 'alex':
        print('666')
    elif name == 'alex':
        print(111)

    第五种:嵌套

    name = 'alex'
    if 3 > 2:
        if name == 'alex':
            print(666)
        else:print(111)
    print(222)

     成绩匹配代码:

    score = int(input("输入分数:"))
    if score > 100:
        print("我擦,最高分才100...")
    elif score >= 60:
        print("C")
    elif score >= 90:
        print("A")
    elif score >= 80:
        print("B")
    elif score >= 40:
        print("D")
    else:
        print("太笨了...E")

    十:while循环

    比如:设计程序:打印1,2,3.....100

    flag = True
    count = 1
    while flag:
        print(count)
        count = count + 1
        if count == 101:
            flag = False

    或者

    count = 1
    while count < 101:
        print(count)
        count = count + 1

    while,,,else

    while,,,else 中若有break,  则直接跳出while,,,else;    若没有break, 则while循环结束后,再执行else。

    i = 1
    while i < 4:
        print(i)
        if i == 2:
            break
        i += 1
    else:
        print('正常循环完毕')

    十一:continue关键字

    比如打印1,2,3,4,5,6,8,9,10,源代码如下:

    count = 1
    while count < 11:
        if count == 7:
            count = count + 1
            continue
        else:
            print(count)
        count = count + 1

     十二:break关键字

    利用break关键字打印1--100,源代码如下:

    start = 1
    while True:
        print(start)
        start = start + 1
        if start == 100:
            print(start)
            break

     相关练习题如下:

    1,使用while循环输入1,2,3,4,5,6,8,9,10

    start = 1
    while start < 11:
        if start == 7:
            pass
        else:
            print(start)
        start = start + 1
    View Code

    2,求1 - 100的所有数的和

    sum = 0
    start = 0
    while start < 100:
        start = start + 1
        sum = sum + start
    print(sum)
    View Code

    3,输出1 - 100内的所有奇数

    start = 1
    while start < 101:
        if start%2 == 1:
            print(start)
            start=start+1
        else:
            start = start + 1
    View Code

    4,输出1 - 100内所有的偶数

    start = 1
    while start < 101:
        if start%2 == 0:
            print(start)
            start=start+1
        else:
            start=start+1
    View Code

    5,求1-2+3-4+5…99的所有数的和

    sum=0
    start=0
    while start < 99:
        start=start+1
        if start%2 == 1:
            sum=sum+start
        else:
            sum=sum-start
    print(sum)    
    View Code

    6,用户登录(三次机会重试)

    start = 0
    while start<3:
        name = input("请输入用户名:")
        password = input("请输入密码:")
        if name == "hello" and password == "666":
            break
        else:
            start=start+1
            print("用户名或密码输入错误,请重新输入")
    print("用户名和密码输入正确")
    View Code

     

     

  • 相关阅读:
    求最大公约数和最小公倍数,从文件输入数据,将结果输出到另外一个文件
    在CentOS系统中安装quota来管理磁盘配额
    The implementation details of the built thermal setup
    Task set generation
    利用FPGA加速实现高性能计算
    跨域名上传图片
    这几天基本是混过来的
    jQuery插件之Cookie
    jQuery on()方法
    CActiveForm提示中文化
  • 原文地址:https://www.cnblogs.com/leiwei123/p/8318651.html
Copyright © 2020-2023  润新知