zoukankan      html  css  js  c++  java
  • Python基础总结(3)

    一、python的基本说明。

      之前我大致的涉猎了python的一些语法概念,发现了python的强大之处,由此我们来真正的走一下python,体验这个从零到一的过程。

            Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。

    当你用一种语言开始作真正的软件开发时,你除了编写代码外,还需要很多基本的已经写好的现成的东西,来帮助你加快开发进度。比如说,要编写一个电子邮件客户端,如果先从最底层开始编写网络协议相关的代码,那估计一年半载也开发不出来。高级编程语言通常都会提供一个比较完善的基础代码库,让你能直接调用,比如,针对电子邮件协议的SMTP库,针对桌面环境的GUI库,在这些已有的代码库的基础上开发,一个电子邮件客户端几天就能开发出来。

      Python就为我们提供了非常完善的基础代码库,覆盖了网络、文件、GUI、数据库、文本等大量内容,被形象地称作“内置电池(batteries included)”。用Python开发,许多功能不必从零编写,直接使用现成的即可。

      再说说Python的缺点:

      任何编程语言都有缺点,Python也不例外。优点说过了,那Python有哪些缺点呢?

        第一个、缺点就是运行速度慢,和C程序相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。而C程序是运行前直接编译成CPU能执行的机器码,所以非常快。

        第二个、缺点就是代码不能加密。如果要发布你的Python程序,实际上就是发布源代码,这一点跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码(也就是你在Windows上常见的xxx.exe文件)发布出去。要从机器码反推出C代码是不可能的,所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。

    二、python基本语法。

      1, python 的输入输出

    #print('hello world') 输出一个字符串

    #print("hello ", "world") 输出多个字符串

    #100+300 再命令行才会有计算结果,这里不会

    #print(100+300) 输出400

    '''
    name = input()
    print(name)  输出一个字符串,回车结束
    '''

    '''
    name = input("
    请输入一个字符串:\n")
    print(name)  
    对输入进行提示,\n转义换行
    '''

      2,python的基础。

      2.1格式处理

      Python的语法比较简单,采用缩进方式,写出来的代码就像下面的样子:

    '''
    a = 100
    if a > 0 :
        print(a)
    else:
        print(-a) 选择语句
    '''

      2.2数值计算

      请务必注意,Python程序是大小写敏感的,如果写错了大小写,程序会报错。

      整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。

       print(100/3)

      结果:33.333333333333336

      2.3字符串处理

      print('i am a "boy"')

      结果:i am a "boy"

      如果字符串里面有很多字符都需要转义,就需要加很多\,为了简化,Python还允许用r''表示''内部的字符串默认不转义,可以自己试试:

      print(r'\n')

      结果:\n

      print('''line
      line
      line'''
    )

      结果:   

      line

      line

      line

    三、编码。

             对于编码的历史就不一一赘述了,ascii –> Unicode –> utf-8

             计算机内存中使用的是Unicode,但是在文本中大量使用utf-8。

      1,相关用法

      计算ascii值:

      print(ord('A'))

      结果:65

      通过ascii打印字符:

      print(chr(65))

      结果:A

      print(b'abd'.decode('ascii')) 这里的abd受b的字符串前面b影响,采用字节存储,这里就是3个字节,

      print(len('123'))#计算的是字节数

      结果:3

             在linux下,如下注释会告诉os如何编码等等,windows会忽略这些注释

      #!/usr/bin/env python3
      # -*- coding: utf-8 -*-

      2,格式化输出。

      print("我是 %s ,您好呀%s"%('您的朋友',"小D"))

      结果:我是 您的朋友 ,您好呀小D

      print("我是{0},你好呀{1}".format('您的朋友','小D'))

      结果:我是您的朋友,你好呀小D

    四、list与tuple。

             1,list类似于其他语言是一种数据类型。

      number = ['one','two','three'] #初始化列表
      
    print(number[0]) #输出第一个元素
      
    number.append('four'#追加
      
    print(number) #输出列表
      
    print(number[3]) #添加成功后可以访问索引3
      
    print(number[-1]) #索引最后一个元素
      
    number.insert(1,"one point five") #插入一个元素
      
    print(number)
      number.pop(1) #不写索引就是删除末尾的元素
         
    number.append(['2',3]) #list 中可以放另一个list
      
    print(number)

      2,tuple叫做元组,一旦确定下来就不可以改变。

      names = ('小明','小红','小花','小丽',['s',3])
      print(names)
      print(names[-1])#同样可以通过索引来寻找元素
      
    names[4][1] += 3
      print(names[4][1]) #这里改变的是列表,而tuple的指向没变

    五、逻辑结构

      a = input("please input a number : \n")
      a = int(a)
      sum = 0
      for b in range(a) : #for循环
        
    if b % 2 == 0 : #条件判断
           
    sum += b
      print(sum)
      b = 0
      while sum > 0: #循环结构,while
          
    b += sum
          sum /= 2
      print(b)

    六、dict 与 set。

      1,dict既是字典,在其他语言中也叫map,是采用键值对的方式存储数据。

      grade = {'lilei':97,'hanmeimei':95,"join":87} #双单引号没影响
      
    print(grade['join'])
         grade['mike'] = 86 #添加键值对
      
    print(grade['mike'])
      grade['lilei'] = 98 #修改
      
    grade.pop('mike') # 删除

      2,set与dict实现一样,只是没有值,其中存储的全是键,以保证元素不重复。

      ***不可变元素,永远不可变,方法创建新对象,保证变化的不是自己本身。

  • 相关阅读:
    Pythonday01
    PYTHON_DAY2
    PYTHON_DAY3
    数据字典生成SQL语句
    Spring cloud Netflix >readMe
    SecureCRT的安装与激活
    MyBatis映射文件UserMapper.xml(mysql环境)
    数据库模糊查询4种用法
    MyBatis配置文件myBatisconfig.xml
    计算机基础:2进制和2进制算法。
  • 原文地址:https://www.cnblogs.com/luohuayu/p/8845997.html
Copyright © 2011-2022 走看看