• 简单认识python的数据类型和语法


    一.Python介绍

        1用途

    1)WEB开发

        最火的Python web框架Django, 支持异步高并发的Tornado框架,短小精悍的flask,bottle, Django官方的标语把Django定义为the framework for perfectionist with deadlines(大意是一个为完全主义者开发的高效率web框架)

    2)网络爬虫

        爬虫领域,Python几乎是霸主地位,ScrapyRequestBeautifuSoapurllib等,想爬啥就爬啥

    3)网络编程

        支持高并发的Twisted网络框架, py3引入的asyncio使异步编程变的非常简单。

    4)云计算

        目前最火最知名的云计算框架就是OpenStack,Python现在的火,很大一部分就是因为云计算

    5)人工智能

        谁会成为AI 和大数据时代的第一开发语言?这本已是一个不需要争论的问题。如果说三年前,Matlab、Scala、R、Java 和 Python还各有机会,局面尚且不清楚,那么三年之后,趋势已经非常明确了,特别是前两天 Facebook 开源了 PyTorch 之后,Python 作为 AI 时代头牌语言的位置基本确立,未来的悬念仅仅是谁能坐稳第二把交椅。

    6)自动化运维

    7)金融分析

    8)科学运算

    9)游戏开发

        2.Python种类

        CPython,IPython,PyPy,Jython,IronPython

    二.Hello World

    print("Hello World!")
    

    三.变量

    1)格式

    #变量名(相当于门牌号,指向值所在的空间),等号,变量值
    name='Hantaozi'
    sex='male'
    age=18
    level=10

    2)定义规范

    #1. 变量名只能是 字母、数字或下划线的任意组合
    #2. 变量名的第一个字符不能是数字
    #3. 关键字不能声明为变量名['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']

    3)定义方式

    #驼峰体
    AgeOfHantao = 56
    #下划线
    age_of_hantao = 56 

    4)id,type,value

    id:可以代表内存地址,type:数据类型,value:值

    #=比较的是value;而is比较的id

    5)常量

    用大写字母表示

    6) 两种特殊的赋值方式

    #链式赋值
    x=y=z=10
    
    #交换两个变量的值
    m=10
    n=20
    m,n=n,m
    
    #从数量类型中解压(字符串,元祖,列表,字典)
    t=('asd','qwe','zxc','rty')
    # a,b,c,d=t
    # print(a,b,c,d)
    
    a,*_,d=t
    print(a,d)

    四。用户交互

    name=input('input your name:')
    age=input(‘input your age:’)

    五.数据类型

    1)数字

    #int 整型
    #float 浮点数

    2)字符串

    #加引号的字符是字符串类型。str
    #1.单双引号一般没有区别,只用于区别字符内部引号。
    name=“i'm hantao”
    #2.三引号用于多行字符串
    info='''
    i'm hantao
    i like Python
    '''

    3)列表

    #定义在[]中,用逗号隔开的多个多种类型的元素
    hobbies = ['movies','game','studying']
    print(hobbies[0])
    movies
    # info=['hantao',['movies','game']] print(hobbies[1][0])
    movies

    4)字典

    info={'name':'hantao','sex':'male','age':'18','hobbies':['game','movies']'}
    print(info['name'])
    hantao
    print(info[hobbies][0])
    game

     5)bool

    #布尔值有True,false.

    六、格式化输出

    #%s字符串占位符:可以接受字符串和数字
    print('my name is %s,my age is %s'%('hantaozi',18))
    #%d数字占位符:只能接受数字
    print('my name is %s,my age is %s'%('hantaozi','18'))#报错

    小练习

    name=input('your name:')
    age=input('your age:')
    sex=input('your sex:')
    job=input('your job:')
    print('''
    -----------info of %s-----------
    Name   : %s
    Age    : %s
    Sex    : %s
    Job    : %s
    --------------end----------------       
        '''%(name,name,age,sex,job))

    七、基本运算符

    算数运算:

                           a=3,b=2

    运算符 描述 实例
    + a+b    5
    - a-b     1
    * a*b    
    / a/b    3
    % 取模 a%b  0
    ** a**b  9
    // 整除 a//b   1

    比较运算:

                           a=3,b=2

    运算符 描述 实例
    == 等于 a==b     False
    != 不等于 a!=b      True
    <> 不等于 a<>b     True
    > 大于 a>b       True
    < 小于 a<b       False
    >= 大于等于 a>=b     True
    <= 小于等于 a<=b     False

    赋值运算:

    运算符 描述 实例
    = 普通赋值运算 a=b  将b的值赋给a
    += 加法赋值 a+=b  a=a+b
    -= 剪发赋值 a-=b   a=a-b
    *= 乘法赋值 a*=b   a=a*b
    /= 除法赋值 a/=b   a=a/b
    %= 取模赋值 a%=b a=a%b
    **= 幂赋值 a**=b a=a**b
    //= 整除赋值 a//=b a=a//b

    逻辑运算:

    and,or,not

    身份运算:

    #is比较的是id
    #而==比较的是值

    八、流程控制之if...else

    练习1:

    #用户登录验证
    name=input('input your name:') password=input('input your password:') if name=='hantao'and password=='123': print('login seccess') else: print('name nor password is wrong')

    练习2:

    #根据用户名称设定用户权限
    '''
    hantao-->超级管理者
    liangchaowei-->普通管理者
    其他-->普通用户
    '''
    name=input('输入用户名字:')
    if name =='hantao':
        print('超级管理者')
    elif name =='liangchaowei':
        print('普通管理者')
    else:
        print('普通用户')

    练习3:

    # 如果:今天是Monday,那么:上班
    # 如果:今天是Tuesday,那么:上班
    # 如果:今天是Wednesday,那么:上班
    # 如果:今天是Thursday,那么:上班
    # 如果:今天是Friday,那么:上班
    # 如果:今天是Saturday,那么:出去浪
    # 如果:今天是Sunday,那么:出去浪
    today=input('今天周几?')
    if today in ['Monday','Tuesday','Wednesday','Thursday','Friday']:
        print('上班')
    elif today in ['Saturday','Sunday']:
        print('出去浪')
    else:
        print('请输入周几')

    九、流程控制之while循环

     while语法:

    while 条件:
        #循环体
        continue
        break
    #打印0~10
    count=0
    while count<=10:
        print('loop',count)
        count+=1
    #打印0~10的偶数
    count=0
    while count<=10:
    if count%2 == 0:
    print('loop',count)
    count+=1

    break和continue:

    #break用于退出本层循环
    while True:
        print "123"
        break
        print "456"
    
    #continue用于退出本次循环,继续下一次循环
    while True:
        print "123"
        continue
        print "456"

    循环嵌套:

    '''
    练习,要求如下:
        1 循环验证用户输入的用户名与密码
        2 认证通过后,运行用户重复执行命令
        3 当用户输入命令为quit时,则退出整个程序
    '''
    count=0
    tag=True
    while tag:
        name = input('input your username:')
        password = int(input('input your password:'))
        if name=='hantao' and password==123:
            print('login success')
            while tag:
                cmd=input('')
                if cmd=='Quit':
                    tag=False
                else:
                    print(cmd)
        else:
            print('wrong username')
        count+=1
        if count==3:
            break

    while+else:

    #循环正常结束,else有输出
    count = 0
    while count <= 5 :
        count += 1
        print("Loop",count)
    
    else:
        print("循环正常执行完啦")
    print("-----out of while loop ------")
    输出
    Loop 1
    Loop 2
    Loop 3
    Loop 4
    Loop 5
    Loop 6
    循环正常执行完啦
    -----out of while loop -----

    十.流程控制之for循环

    l=(1,3,5,2,7)
    for l in l:
        print(l)
    for i in range(1,10):
        for j in range(1,i+1):
            print('%s*%s=%s' %(i,j,i*j),end=' ')
        print()

    练习题:

    #1. 使用while循环输出1 2 3 4 5 6     8 9 10
    count=1
    while count<=10:
        if count==7:
            count+=1
            continue
        print(count)
        count+=1
    #2. 求1-100的所有数的和
    count=0
    sum1=0
    while count<=100:
        count+= 1
        sum1+=count
    print(sum1)
    #3. 输出 1-100 内的所有奇数
    count=0
    while count<100:
        if count%2==1:
            print(count)
            count+=1
        else:
            count+=1
    #4. 求1-2+3-4+5 ... 99的所有数的和
    count=0
    sum1=0
    while count<99:
        count+=1
        if count%2==1:
            sum1+=count
        else:
            sum1-=count
    print(sum1)
    '''
    5:猜年龄游戏升级版
    要求:
        允许用户最多尝试3次
        每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此往复,如果回答N或n,就退出程序
        如何猜对了,就直接退出
    '''
    name='hantao'
    count=0
    while count<3:
        if name==input('guess my name:'):
            print('NB!')
            break
        else:
            count+=1
            if count==3:
                cmd=input('play again?')
                if cmd =='Y'or cmd=='y':
                    count=0
                else:
                    break





  • 相关阅读:
    css字体图标的制作和使用。
    js日期插件bootstrap-datetimepicker的使用
    vue.js学习笔记(二):如何加载本地json文件
    vue.js学习笔记(一):什么是mvvm框架,vue.js的核心思想
    总结XX网app中webapp常见的前端错误。
    EffectiveJava——接口优于抽象类
    EffectiveJava——复合优先于继承
    java多线程(三)——锁机制synchronized(同步语句块)
    java多线程(二)——锁机制synchronized(同步方法)
    java多线程(一)——线程安全的单例模式
  • 原文地址:https://www.cnblogs.com/hantaozi430/p/7476303.html
Copyright © 2020-2023  润新知