• python入门(一)


    一 、编程与编程语言

    python是一门编程语言,搞明白三点:
        1、编程目的?
           计算机的发展就是为解放人力,机器是死的,所以人必须找到一种能够被机器识别的表达方式从而把自己的思想按照
           这个表达方式传递机器,完成机器可以自发的工作。
        2、什么编程语言?
           上面所说的表达方式指的就编程语言
    
           英语            Python
           单词            关键字(if while for and or)
           语法            语法
           作文            编程
        3、什么编程?
           按照某种编程语言的语法风格写程序,程序在未执行前就是一堆普通文件。

    二、编程语言的分类:

    程序员(奴隶主)    计算机(奴隶)
      1、机器语言:站在奴隶角度说计算机能听懂的话,直接用二进制编程,直接操作硬件
          优点:执行效率快
          缺点:学习难度大,开发效率低
      2、汇编语言:站在奴隶角度说计算机能听懂的话,用一些英文标签来代替一串特定的意义的二进制,还是直接操作硬件
          优点:执行效率快,不如机器语言快
          缺点:学习难度大,开发效率低,比机器语言降一个难度
       3、高级语言:站在人的角度说人话,机器无法理解,所以需要翻译
           编译型(C):相当于百度翻译,翻译一次,拿着该翻译的结果去执行。(如果报错,要重新调试,就要重新编译一次,代码改正后还要再编译一次,在运行一遍,所以调试麻烦,开发效率低。)
            优点:执行效率高
            缺点:开发效率低
           解释型(Python):相当于同声传译,一边解释一边执行。(解释型速度慢)(要有解释器)
            优点:开发效率高
            缺点:执行效率低     
      4、总结(开发效率占首位,软件现在都是基于网络)
          执行效率:从高到低
          开发效率:从低到高
          学习难度:从难到易
      执行效率不是影响,开发效率才是王道
      5.python有哪些种类:
        指的是python解释器的种类:cpython,IPython、pypy、Jpython、IronPython 

      6.python解释器安装:

        (1)首先下载:https://www.python.org/

        (2)选自定义安装并且加到环境变量中去

          

          

        (3)加环境变量

          计算机——属性——高级系统设置——高级——环境变量——加到系统变量中(对所有用户有效)

         (4)pip第三方库

            

    三、写程序的两种方式:

       交互式环境:
          即时调试

        

       文件的方式:
          python3 C: est.py

        

    四、变量:

    1  什么是变量?
    2       变:指的是“变化”,量:指的反映某种状态
    3       能反映出状态变化的机制就叫变量(存数据,让计算机能识别,能变化)
    4    如何定义变量?
    5     name:变量名 ,‘=’赋值符号,‘egon’:变量值
    1     (1)反应的是状态
    2       name='egon'
    3       password='egon123'
    4     (2)指的是可以变化
    5       password='egon@123'
    View Code

       

     1 变量名的命名规则?
     2       #1. 变量名只能是 字母、数字或下划线的任意组合
     3       #2. 变量名的第一个字符不能是数字
     4       #3. 关键字不能声明为变量名
     5    定义的方式:
     6     驼峰式
     7        AgeOfOldboy=53
     8     下划线
     9        age_of_oldboy=53
    10        age_of_oldboy=54

    五、常量:

      AGE_OF_OLDBOY=54

    六: 执行过程(重点!!!)

    1  python3 C:	est.py
    2      1、先启动python3.exe
    3      2、把C:	est.py从硬盘读入内存
    4      3、解释执行文件内容(自动识别python语法)

    七、引用计数+垃圾回收机制(了解)

       x='aaa' #'aaa'这个值的引用计数为1
       y=x #'aaa'这个值的引用计数为2

       x=1
       y=2

       z=3
       del z #解除绑定

    八、产生一个变量的三要素(重点)

     1  name='egon'
     2    变量值:用来表示状态
     3     用变量名取变量值
     4       print(name)
     5    变量值的类型:表示不同的状态应该用不同类型的值去表示(数字:年龄,字符串:名字)
     6     print(type(name))
     7    变量值的id号:(指的是内存地址的位置(把内存地址转换成id号了))
     8       print(id(name))
     9   
    10    >>> name1='egon'
    11    >>> name1,type(name1),id(name1)
    12    ('egon', <class 'str'>, 35494968)
    13    >>>
    14    >>>
    15    >>>
    16    >>> name2='egon'
    17    >>> name2,type(name2),id(name2)
    18    ('egon', <class 'str'>, 35494968)
    19  
    20    >>> info1='info egon:18'
    21    >>> info2='info egon:18'
    22    >>> info1,type(info1),id(info1)
    23    ('info egon:18', <class 'str'>, 35513136)
    24    >>> info2,type(info2),id(info2)
    25    ('info egon:18', <class 'str'>, 35513200)
    26    数据量小的话不会再开内存空间了(python的优化机制)
    27    >>> x=1
    28    >>> y=1
    29    >>>
    30    >>> id(x)
    31    1626261168
    32    >>> id(y)
    33    1626261168
    34    >>>
    35    >>> x=1234567890123
    36    >>> y=1234567890123
    37    >>> id(x)
    38    30057584
    39    >>> id(y)
    40    34827152
    41  
    42    判断值是否相等:==
    43    判断id是否相等:is
    44    >>> x=1234567890123
    45    >>> y=1234567890123
    46    >>> id(x)
    47    30057584
    48    >>> id(y)
    49    34827152
    50    >>>
    51    >>>
    52    >>> x is y
    53    False
    54    >>> x == y
    55    True

    九:程序与用户交互

    1 user=input('先生您好,请输入账号:') #input把用户输入的内容都存成字符串类型
    2    """""":指的是多行注释
    3    """
    4    xxxxx
    5    yhyyyy
    6    zzz
    7    """

    十、数据类型

      1  '''
      2   整型:int
      3   状态:等级,身份证号,年龄
      4   '''
      5   # level=10 #level=int(10)
      6   # print(level,type(level),id(level))
      7 
      8   '''
      9   浮点型:float
     10   状态:薪资,身高,体重
     11   '''
     12   # salary=3000.3 #salary=float(3000.3)
     13   # print(salary,type(salary),id(salary))
     14 
     15   '''
     16   字符串:str在引号(单引号,双引号,三引号)里定义的一堆字符
     17   状态:描述性的内容,比如名字,性别,国籍
     18   '''
     19   # gender='male' #gender=str('male')
     20   # print(type(gender))
     21   # info="my name is egon i'm a teacher"
     22   #
     23   # msg='''
     24   # xxxx
     25   # yyy
     26   # zzz
     27   # '''
     28   # print(msg)
     29 
     30   # x=1
     31   # y=2.3
     32   # res=x+y
     33   # print(res)
     34   #字符只能跟字符串之间进行+或者*
     35   # info1='hello'
     36   # info2='world'
     37   # res=info1+info2  
     38   # print(res)
     39   # print('egon'*10)
     40   # print(''*10)
     41   显示的好看
     42   # print('='*10)
     43   # print('hello world')
     44   # print('='*10)
     45 
     46   '''
     47   列表:list在[]内,用逗号分隔开,存放多个任意类型的元素
     48   状态:有序存放多个值
     49   '''
     50   # info='''
     51   # name:xxx
     52   # age:18
     53   # sex:male
     54   # '''
     55   # print(info)
     56   # info=['egon',18,'male',['欧德博爱','education',70]] 
     57   # print(info[0])
     58   # print(info[3])
     59   # print(info[3][0])
     60 
     61   '''
     62   字典类型:dict 定义花括号内,用逗号分割key:value,value可以是任意类型,但是key必须不可变类型
     63   状态:存放多个值
     64   '''
     65      #  name  age  sex   company
     66   # info=['egon',18,'male',['欧德博爱','education',70]]
     67   # info[2]
     68     #  name  age  sex   company
     69   info={
     70       'name':'egon',
     71       'age':18,
     72       'sex':'male',
     73       'company':['欧德博爱','education',70]
     74   } #info=dict({....})
     75   # print(info,type(info),id(info))
     76   # print(info['sex'])
     77   # print(info['company'][2])
     78   #
     79   #  
     80   #
     81   # info={
     82   #     'name':'egon',
     83   #     'age':18,
     84   #     'sex':'male',
     85   #     'company':{'name':'欧德博爱','type':'education','emp_count':70}
     86   # }
     87   #
     88   # print(info['company']['type'])
     89  
     90   #
     91   # dic={0:'egon',1:'xxx',2:'yyy'}
     92   #  
     93   # print(dic[0])
     94   # stduents=['egon','alex','wxx','yxx']
     95 
     96   '''
     97   布尔:bool True,False
     98   状态:成立,不成立,用来做逻辑运算---》判断
     99   '''
    100   print(type(True))
    101   age=38
    102   print(age > 18)

     十一、可变类型与不可变类型

     1 #1.可变类型:在id不变的情况下,value可以变,则称为可变类型,如列表,字典
     2  
     3 #2. 不可变类型:value一旦改变,id也改变,则称为不可变类型(id变,意味着创建了新的内存空间)数字,字符串,浮点,布尔值
     4     #int,float,str
     5 # dic={1:'a'}
     6 # dic={1.1:'a'}
     7 # dic={'b':'a'}
     8  
     9 # dic={[1,2,3]:'a'}
    10 # dic={{'a':1}:'a'}
    11  
    12 # dic={True:'a'}
    13 # print(dic[True])

     

     

    十二、格式化输出

     1  # name=input('name>>: ')
     2   # age=input('age>>: ')
     3   #
     4   # print('my name is [%s] my age is <%s>' %(name,age))
     5   # print('my name is %s' %'egon')
     6   # print('my name is %s' %11111111111111)
     7   # print('my age is %d' %10)
     8   # print('my age is %d' %'xxxx') #%d只能接收数字,而%s既可以接收数字又可以接收字符串
     9   练习:
    10   name=input('name>>: ')
    11   age=input('age>>: ')
    12   sex=input('sex>>: ')
    13   job=input('job>>: ')
    14   msg='''
    15   ------------ info of %s -----------
    16   Name  : %s
    17   Age   : %s
    18   Sex   : %s
    19   Job   : %s
    20   ------------- end -----------------
    21   ''' %(name,name,age,sex,job)
    22   print(msg)

     

    十三、基本运算符

      算数运算

        以下假设变量:a=10,b=20

    比较运算

        以下假设变量:a=10,b=20

     

     赋值运算

        以下假设变量:a=10,b=20 

      逻辑运算

     

    >>> True or Flase and False
    True
    >>> (True or Flase) and False
    False
     1  #算术
     2     # print(10%3)
     3     # print(2**3)
     4     # print(10/3)
     5     # print(10//3)
     6 
     7   #比较
     8     # print(10 > 3)
     9     # print(10 < 3)
    10     # print(10 == 3)
    11     # print(10 != 3)
    12   #赋值
    13     # a=2
    14     # b=a
    15     #链式赋值
    16     # a=b=c=2
    17     # print(id(a),id(b),id(c))
    18   #交叉赋值
    19     # m=1
    20     # n=2
    21     # temp=m
    22     # m=n
    23     # n=temp
    24     # print(m,n)
    25     # m,n=n,m
    26     # print(m,n)
    27   #解压
    28     l=[1,2,3,4]
    29     # a,b,c,d=l
    30     # print(a)
    31     # print(b)
    32     # print(c)
    33     # print(d)
    34 
    35     # a=l[0]
    36     # _=l[1]
    37     # _=l[2]
    38     # d=l[3]
    39     # a,_,_,d=l
    40     # print(a,d)
    41     # a,*_,d=l
    42     # print(a)
    43     # print(d)
    44   #赋值运算符
    45     # level=1
    46     # level+=1 #level=level+1
    47     # level-=1 #level=level-1
    48     # print(level)
    49   #逻辑and or not
    50     # age=18
    51     # is_pretty=True
    52     # height=170
    53     # weight=80
    54     # print(age >= 18 and is_pretty == True and height > 160 and weight > 30 and weight < 90)
    55     # print(1 > 2 or 1 > 3 or 3 > 1 or 4 < 3)
    56 
    57     # print(not 4 > 2)
    58  
    59     age=18
    60     is_pretty=True
    61     height=170
    62     weight=80
    63     print((height > 160 and weight > 60 and weight < 90) or is_pretty == True or age == 18
    64     )
    65 
    66   #身份
    67   #is比较的是id
    68   #而==比较的是值

    十四、流程控制之if判断

     1 # age=28
     2   # if age > 18:
     3   #     print('表白')
     4   # age=28
     5   # if age > 18 and age < 22:
     6   #     print('表白')
     7   # else:
     8   #     print('阿姨好')
     9 
    10   # age=19
    11   # is_pretty=True
    12   # success=True
    13   # if age > 18 and age < 22 and is_pretty:
    14   #     if success:
    15   #         print('表白成功,在一起')
    16   #     else:
    17   #         print('去他妈的爱情')
    18   #  else:
    19   #      print('阿姨好')
    20  
    21 score=input('>>: ')
    22 #>=90:优秀
    23 #>=80 <90 :良好
    24 #>=60 <80 :合格
    25 #<60:滚犊子
    26 score=int(score)
    27 if score >= 90:
    28     print('优秀')
    29 elif score >= 80:
    30     print('良好')
    31 elif score >= 60:
    32     print('合格')
    33 else:
    34     print('滚犊子')

    十五、流程控制之while循环

      1 #条件循环
      2 '''
      3 while 条件:
      4     代码1
      5     代码2
      6     代码3
      7 '''
      8 # age_of_oldboy=54
      9 #
     10 # guess=input('>>: ')
     11 # guess=int(guess)
     12 #
     13 # if guess > age_of_oldboy:
     14 #     print('too big')
     15 # elif guess < age_of_oldboy:
     16 #     print('too small')
     17 # else:
     18 #     print('you got it')
     19 #
     20 # guess=input('>>: ')
     21 # guess=int(guess)
     22 #
     23 # if guess > age_of_oldboy:
     24 #     print('too big')
     25 # elif guess < age_of_oldboy:
     26 #     print('too small')
     27 # else:
     28 #     print('you got it')
     29 #
     30 # guess=input('>>: ')
     31 # guess=int(guess)
     32 #
     33 # if guess > age_of_oldboy:
     34 #     print('too big')
     35 # elif guess < age_of_oldboy:
     36 #     print('too small')
     37 # else:
     38 #     print('you got it')
     39  
     40 
     41 # count=0
     42 # while count <= 10:
     43 #     print(count)
     44 #     count+=1
     45 
     46 #while+break
     47 # count=0
     48 # while True:
     49 #     if count == 5:
     50 #         break #跳出本层
     51 #     print(count)
     52 #     count+=1
     53 #while+continue
     54 #1,2,3,4,5,7
     55 # count=1
     56 # while count <= 7:
     57 #     if count == 6:
     58 #         count += 1
     59 #         continue #跳出本次循环
     60 #     print(count)
     61 #     count+=1
     62 
     63 #嵌套循环
     64 # count=1
     65 # while True:
     66 #     if count > 3:
     67 #         print('too many tries')
     68 #         break
     69 #
     70 #     name=input('name>>: ')
     71 #     password=input('password>>: ')
     72 #     if name == 'egon' and password == '123':
     73 #         print('login successfull')
     74 #         break
     75 #     else:
     76 #         print('user or password err')
     77 #         count+=1
     78  
     79  
     80  
     81 # count = 1
     82 # while True:
     83 #     if count > 3:
     84 #         print('too many tries')
     85 #         break
     86 #
     87 #     name = input('name>>: ')
     88 #     password = input('password>>: ')
     89 #     if name == 'egon' and password == '123':
     90 #         print('login successfull')
     91 #         while True: #让用户能重复输入命令
     92 #             cmd=input('cmd>>: ') #q
     93 #             if cmd == 'q':
     94 #                 break#跳出本层循环
     95 #             print('run %s' %cmd)#run cmd代表这个cmd执行了,这样就退不出来,就在上面写如果cmd=‘q’时,就break,从这个地方如果退出还会让你输账号和密码
     96 #         break            #正常xshell你退出了就不会让你在输账号和密码了,所以我们要退出所有循环,所以要在这加break
     97 #     else:
     98 #         print('user or password err')
     99 #         count += 1
    100  
    101 
    102 # count = 1
    103 # tag=True    #标志位的实现方式,如果单独写True就只有表示脚本中的True都是独立的,定义完变量就是用的一个True,一个变量的值,在输入‘q’的时候退出所有循环
    104 # while tag:
    105 #     if count > 3:
    106 #         print('too many tries')
    107 #         break
    108 #
    109 #     name = input('name>>: ')
    110 #     password = input('password>>: ')
    111 #     if name == 'egon' and password == '123':
    112 #         print('login successfull')
    113 #         while tag:
    114 #             cmd=input('cmd>>: ') #q      
    115 #             if cmd == 'q':
    116 #                 tag=False     在这吧tag定为False,就是当输入‘q’时,tag变成False了,所以整个循环的tag都成为False了,所以就会全部退出了                           
    117 #                 continue
    118 #             print('run %s' %cmd)
    119 #
    120 #     else:
    121 #         print('user or password err')
    122 #         count += 1
    123  
    124 
    125 #while+else
    126 count=0
    127 while count <= 5:
    128     if count == 3:
    129         break
    130     print(count)
    131     count+=1
    132 else:
    133     print('当while循环在运行过程中没有被break打断,则执行我')

     

     
  • 相关阅读:
    第一轮铁大树洞APP开发冲刺(3)
    记一次寒假小尝试心得体会
    小学四则运算口算练习app---No.7
    小学四则运算口算练习app---No.6
    小学四则运算口算练习app---No.5
    小学四则运算口算练习app---No.4
    小学四则运算口算练习app---No.3
    小学四则运算口算练习app---No.2
    小学四则运算口算练习app
    《需求工程--软件建模与分析》读书笔记03
  • 原文地址:https://www.cnblogs.com/yinfutao/p/7967153.html
Copyright © 2020-2023  润新知