zoukankan      html  css  js  c++  java
  • Python 学习基础

    一、编程语言的发展历史

    • 按照翻译方式分为两类:
    1 # 编译型(类似于谷歌翻译):如c、java, 运行速度快,调试麻烦
    2 # 解释型(l类似于同声传译):如Python,运行速度慢,调试麻烦
    • 按照特点总结如下:
    #机器语言 
    优点:最底层,执行速度快
    缺点:开发效率低
    
    #汇编语言
    优点:比较底层,执行速度较快
    缺点:开发效率较低
    
    #高级语言
    #编译型,以C为例,执行速度快,跨平台差
    #解释型:以Python为例,执行速度慢,依赖解释器运行,跨平台强
    

     二、搭建Python环境

    1. 按照第三方库
      yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc gcc-c++ make
      
      yum -y install libffi-devel
      
    2. 从Python官网下载Python的安装包
    3. 将Python-3.8.0.taz 传到服务器
      mv Python-3.8.0.taz /home/
      tar -zxvf Python-3.8.0.taz
      cd Python-3.8.0
      
      创建一个python安装路径
      mkdir -p /usr/local/python3
      
      编译安装
      ./configure --with-ssl --prefix=/usr/local/python3
      make && make install
      
      删除原来的python2 软链接
      rm -rf /usr/bin/python
      
      创建新的软链接
      ln -s /usr/local/python3/bin/python3.8 /usr/bin/python
      
      查看python版本
      [root@kingstar bin]# ls -al|grep python
      -rwxr-xr-x.  1 root root      11232 8月  13 05:18 abrt-action-analyze-python
      lrwxrwxrwx.  1 root root         29 11月 29 17:18 pip -> /usr/local/python3/bin/pip3.8
      lrwxrwxrwx.  1 root root         32 11月 29 13:12 python -> /usr/local/python3/bin/python3.8
      lrwxrwxrwx.  1 root root          9 11月 29 11:43 python2 -> python2.7
      -rwxr-xr-x.  1 root root       7216 8月   7 08:52 python2.7
      [root@kingstar bin]# python -V
      Python 3.8.0
      [root@kingstar bin]# python2 -V
      Python 2.7.5
      [root@kingstar bin]#
      View Code
    4. 将yum的路径改为python2.7 (vim /usr/bin/yum)
    5. 如果安装pip过程中报错:
      #报错 SyntaxError: invalid syntax
      vim /usr/libexec/urlgrabber-ext-down
      将路径改为python2.7
      
    6. 下载get-pip.py
      curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
      
    7. 添加环境变量
      echo PATH='/usr/local/python/bin:$PATH' >> /etc/profile
      source /etc/profile
      

    三、变量的定义规范以及方式

    • 变量的定义规范
      1 # 变量名只能是 字母、数字或下划线的任意组合
      2 # 变量名的第一个字符不能是数字
      3 # 关键字不能声明为变量名
      4 ['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']
      View Code
    • 变量的命名方式
      # 驼峰体
      AgeOfOldboy = 56 
      NumberOfStudents = 80
      # 下划线
      age_of_oldboy = 56 
      number_of_students = 80
      View Code

    四、基本数据类型

    • 整形(int)
      age = 18
      print(type(age))
      
      <class 'int'>

      判断一个对象可以转换为整形数据
      obj = '99'
      if obj.isdigit():
      print(True)
      else:
      print(False)
    • 浮点型(float)
      圆周率
      pi = 3.1415926
      print(type(pi))
      <class 'float'>
      
      注意:可以通过float将字符串式整数(如‘99’)转化为浮点型
      float('99')   >> 99.0
      
    • 字符串类型(str)
      name = 'egon'
      print(type(name))   >> <class 'str'>
      obj = input('Please enter your age:')
      print(type(obj))  >> <class 'str'>
      
    • 列表类型(list)
      username = ['alex','egon','tank']
      
    • 字典类型(dict)
      user_info = {'name':'egon','age':18}
      # 根据键来取值,注意key是唯一的
      user_info.items()
      user_info.keys()
      user_info.values()
      user_info.get(key)  >> value
      
    •  元组类型(tuple)
      tuple_1 = ('alex',18,'male')
      
    •  集合类型(set)
      # 集合(set)是0个或多个对想引用的无序集合,这些对象所引用都是哈希运算的
      # 集合是可变的。其中的项是无序的,因此,没有索引位置概念
      # 集合中,任何元素都没有重复
      # set和dict类似,是一组key的集合,但不存储value,且在set中没有重复的key
      
    • 布尔类型(bool)
      #所有数据类型都自带布尔值
      1、None,0,空(空字符串,空列表,空字典等)三种情况下布尔值为False
      2、其余均为真 
      

    参考文章链接:

    https://blog.csdn.net/wodemale/article/details/89341554
    https://www.cnblogs.com/linhaifeng/articles/7133167.html
    
  • 相关阅读:
    Django Rest Swagger生成api文档
    django 完整日志配置
    django解决跨域请求的问题
    Django REST framework 自定义字段
    Django model 定义属性
    mysql server has gone away的原因
    也谈时间管理和GTD
    MySQL之thread cache
    MySQL之aborted connections和aborted clients
    TokuDB的特点验证
  • 原文地址:https://www.cnblogs.com/surpass123/p/12341573.html
Copyright © 2011-2022 走看看