zoukankan      html  css  js  c++  java
  • python开发之路day01

    1.Python前世今生

      python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。

    最新的TIOBE排行榜,Python赶超PHP占据第五!

    Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。互联网公司广泛使用Python来做的事一般有:自动化运维自动化测试大数据分析、爬虫、Web 等。

    注视:上述重点字体表示该公司主要使用Python语言开发

    2.为什么是Python而不是其他语言?

    C 和 Python、Java、C#等

          C语言: 代码编译得到机器码 ,机器码在处理器上直接执行,每一条指令控制CPU工作

       其他高级语言: 代码编译得到字节码 ,虚拟机执行字节码并转换成机器码再后在处理器上执行

    Python 和 C  Python这门语言是由C开发而来

       对于使用:Python的类库齐全并且使用简洁,如果要实现同样的功能,Python 10行代码可以解决,C可能就需要100行甚至更多.
       对于速度:Python的运行速度相较与C,绝逼是慢了

    Python 和 Java、C#等

       对于使用:Linux原装Python,其他语言没有;以上几门语言都有非常丰富的类库支持
       对于速度:Python在速度上可能稍显逊色

    所以,Python和其他语言没有什么本质区别,其他区别在于:擅长某领域、人才丰富、先入为主。

    3.Python的种类

        • Cpython(解释)代码----字节码-----机器码(解释一行,执行一行)
              Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。
        • Jyhton
              Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行。
        • IronPython
              Python的C#实现,IronPython将Python代码编译成C#字节码,然后在CLR上运行。(与Jython类似)
        • PyPy(特殊)(编译)代码---字节码-----机器码(全部转换完之后在执行)
              Python实现的Python,将Python的字节码字节码再编译成机器码。
        • RubyPython、Brython ...     

    4、输入 输出

             输入:

        input:v = input ('请输入用户名:')     v = 表示接收用户输入的值(等同于变量)

        import:示例: import getpass   v = getpass.getpass('请输入密码:')

        输出:

        print('内容'):打印括号里面的内容         print(变量):打印变量的内容

       示例: 

    name = input('请输入姓名:')
    print(name)
    
    import getpass
    pwd = getpass.getpass ('>>>')
    print(pwd)
    
    import getpass
    name = input('请输入姓名:')
    pwd = getpass.getpass ('请输入密码:')
    age = input('请输入您的年龄:')
    print(name)
    print(pwd)
    print(age)
    复制代码

    5、条件语句

        if 条件:                                 if 条件:                                              if 条件:

         成功走这儿                               ...                                                      if 条件:

        else:             elif 条件:                                                  ...

         失败走这儿           ...                                                       elif 条件:

                        elif 条件:                                                   ...

                         ...                                                       else:

                        else:                                                          ...

                         ... 

    示例:

    username = input('请输入用户名:')
    if username == 'sunkedong':
        print('超级管理员')
    elif username == 'wuyanmin':
        print('超级管理员的老婆大人')
    elif username == '乖乖':
        print('吾皇')
    else:
        print('拜拜。。。')
    print('end')

    6、.循环语句

        while 条件:

          continue  (跳出本次循环,执行下次循环)

          break   (跳出所有循环)

        示例:

    i = 1
    while i < 11 :
        print(i)
        i +=  1
    =========================>
    while True:
        username = input('请输入用户名:')
        pwd = input('请输入密码:')
        if username == 'chengfei' and pwd == '123':
            print('登录成功')
            break
        else:
            print('登录失败,请重新登录')

    示例:

    i = 1
    while True:
        if i == 7 :
            i += 1
            continue
        print(i)
        i += 1
        if i == 11 :
            break

    示例:

    i = 1
    while i < 11 :
        if  i == 7:
            i += 1
            continue
        print(i)
        i += 1
        if i == 11:
            break

    7、运算符

    a.算术运算符

    b.比较运算符

    c.赋值运算符

    d.逻辑运算符

     

    8、.python类型

        —整数:创建:a = 123 或 a = int(123)  转换:age = ‘18’ ---- new_age = int(age)   print (type(变量)) 查看这个变量是什么类型

        —布尔值 :创建:a = True b = False 转换:数字转换时,只有0是False,其他都是True,字符串转换时,只有为空时是False,其他True(a = 1 -- b = bool(a) print (b))

        —字符串:-创建:a = 'tom' 或 a = str('tom') -转换:age = 18  new_age = str(age)

                   -字符串的拼接:如下

    str = '我叫孙克东,今年18岁,性别:男。'
    val = '扯淡'
    new_str = str + val
    print(new_str)

    9.列表

      -创建列表:a = ['tom','jim',123,'alxe'] 或 a = list(['tom','jim',123,'alxe'])

      -in判断:

     -索引  val = a [0]   print (val)

      -长度  val = len(a)  print (val)

      -切片  val = a [0::2] print (val)

      -追加 a.append ('chengfei')  追加只能从最后追加

      -插入 a.insert (1,'xo')  在第二个字符串前面插入,这里的0指的是索引

      -删除 a.remove ('tom') 只删除列表中的第一个该字符串   del a [0] 删除列表下的第几个字符串 (可以索引删除,也可以切片删除)

      -修改 a[0] = 'chengfei' 重新给该字符赋值

    10.字典

      -创建 v = {'name':'tom','pwd':'123'}  或  v = dic ({'name':'tom','pwd':'123'})

      -索引 val = v['name']     print(val)

      -增加 (有该值时,修改,没有该值,增加)v['age'] = 18 print (v)

      -删除 del v['name']

      -for循环

      -长度  print (len(v))

      -示例

    字典的嵌套

    user_list = {
        'k1': 'v1',
        'k2': {'kk1': 'vv1','kk2': 'vv2'},
        'k3': 456,
        'k4': ['tom','jim',123,{'k11':'v11'},['a','b','c']]
    }
    user_list['k4'][4].append('123')
    user_list['k4'][3]['name'] = 'sunkedong'
    print(user_list)

    应用

    user_list = [
        {'name':'jim','pwd':'123','time':1},
        {'name':'tom','pwd':'123','time':1},
        {'name':'alxe','pwd':'123','time':1}
    ]
    user = input('用户名:')
    pwd = input('密码:')
    for item in user_list:
        if user == item['name'] and pwd == item['pwd']:
            print('登陆成功')
            break

    练习:

    打印-10的偶数

    count = 0
    while count <= 10:
        if count%2 == 0:
            print(count)
        count +=1

    猜大小游戏

    count = 0
    while count < 3:
        sun_age = 24
        input_age = int(input('>>'))
        if input_age > sun_age :
            print("猜大了,继续猜")
        elif input_age < sun_age :
            print("猜小了。继续猜")
        else:
            print("恭喜,猜对了")
        count +=1

    11、作业:

     最终的用户登录接口

    #coding:utf-8
    import os
    #定义一个用户列表
    info=[['admin','adminpass'],['sunkd','sunkdpass'],['root','rootpass']]
    #模拟用户登录的主机名
    hostname = 'localhost'
    count=0
    tag=True
    while tag:
        if count >=3:
            break
        username = input("user:")
        password = input("pass:")
    
        if username == info[0][0] and password == info[0][1] or username == info[1][0] and password ==info[1][1] or username == info[2][0] and password == info[2][1]:
            print('welcome to %s user'%(username))
            while tag:
                msg=input('[%s@%s ~]'%(username,hostname))
                if msg == "quit":
                    tag=False
                else:
                    print(msg)
        else:
            print("login failed")
            count+=1
            surplus=3 - count
            print(surplus)
            print('你已经输错%s次,还有%s次机会'%(count,surplus))
            if count >= 3:
                #如果用户输入三次,锁定结果到文件,下次进行判断
                os.system('echo lock > lock.log')


  • 相关阅读:
    Jsp+Servlet实现文件上传下载——前台页面开发
    【软考】——原码、反码、补码、移码
    【NCRE】——c# 给PPT判分
    [RN] React Native Image 实现placeholder占位图
    [PHP] Elasticsearch 6.4.2 的安装和使用
    [RN] 使用 Genymotion 导致 ” Genymotion 已连接,但无法访问互联网 “ 的错误
    [RN] React Native 分享弹窗 ShareAlertDialog
    [RN] React Navigation 使用中遇到的显示 问题 汇总
    [RN] React Native Fetch请求设置超时
    [RN] React Native 滚动跳转到指定位置
  • 原文地址:https://www.cnblogs.com/sunkedong/p/7474173.html
Copyright © 2011-2022 走看看