写点什么

Python 基础详解(一)

  • 2022 年 7 月 14 日
  • 本文字数:3029 字

    阅读完需:约 10 分钟

1. Python 特点

  • Python 面向对象、解析性的语言

  • 几种解析器:

  • CPython:C 语言解析 Python 语言的解析器

  • Jpython:Java 语言解析 Python 语言

  • IronPython:用 C#(.net 平台)解析

  • PyPy:是使用 Python 语言解析

  • Python 的应用广,在科学计算、自然语言处理、图形图像处理、脚本开发、Web 应用

  • Python 几种版本:

  • Python2.X

  • Python3.X

  • Python 并没有做到向下兼容,了解两个版本的区别和联系

  • 能够无缝的改进 Python2.x 的代码 d 到 Python3.x 中

2. Python 基础版本的安装

  • Python.org

  • 目前版本

  • 3.8.0

  • 3.7.8

  • 3.6.8(目前使用)

  • 2.7.17

  • Java 语言------.java-----jar 包------mvn repo-----mvn install/uninstall

  • Python-------.py-------.whl 轮子文件---pip install---pip uninstall

  • pip 的命令

  • pip install package

  • pip uninstall package

  • pip list 展示安装的包

  • pip install -U 更新方式安装

3. Anaconda 数据科学环境的安装

  • IDE--集成开发环境--Eclipse、IDEA 需要加载 JDK-Scala

  • 大数据 hadoop-spark-----CDH(各种大数据组件)

  • 数据科学环境:

  • Anaconda 是数据科学开发环境

  • 包含了基础的 python 的环境

  • 在原来的 Python 的基础上增加了 180+多个工具包

  • 安装:

  • windows 安装,直接下一步下一步,遇到需要打钩的地方尽量打上

  • Anaconda 中有哪些组件?

  • Anaconda-Navigiter

  • Anaconda-Prompt

  • Anaconda-Ipython--增强式的 Python--语法高亮等等---仍然不方便

  • Anacodna**-jupyternotebook**

  • jupyter notebook 是一个以 web 程序启动 web 网页交互式的书写代码的平台

  • 底层基于 ipython 的

  • 两种打开方式:

  • 1-界面的点击方式

  • 2-jupyter notebook 方式

  • 后缀名:.ipynb

  • 可以将 ipynb 的文件拖拽到 jupyternotebook 中启动交互式编写代码

  • Anaconda-Spyder

  • IDE

  • 4. 通过Pycharm和Anaconda的整合


  • 安装 Pycharm---jetBrain 公式

  • 安装 Anaconda

  • 第一步:建议大家更改环境变量

  • 第二步:更改解析器 Interpertor

  • 第三步:创建项目

  • 创建项目的过程中需要指定解析器

  • 第四步:写代码



* 基础代码:
* print函数在Python2和Python3的区别
* ```python #-*- coding: utf-8 -*- # @Time : 2022/01/25 10:18 # @Author : 公众号【五分钟学大数据】 # @Email : load # @File : 1.0HelloWorld.py # python2中print是语句,既可以加括号也可以不加括号 # python3中print是函数,必须加括号 # print "HelloWorld" print("HelloWorld")
复制代码


  • conda

  • 安装包:pip install conda install

  • 卸载包: pip unistall conda uninstall

  • 更新的方式安装包:pip install -U conda install -U

  • 查看包:pip list conda list(可以查看哪些是 pip 安装的,那些是 conda 安装的)

  • Conda 命令可以创建独立的 Python 的沙箱环境

  • 在 Python3.6 中创建了一个 Python2.7

  • create -n create envName python==2.7.0

  • source active envName

  • soucre deactive envName

5. Python 的基础数据类型

  • 编码和解码



* 导包
* ```python import requests as re get = re.get("https://www.fivedata.cn") print(get.url) print(get.encoding) print(get.text) #sin(x) import math print(math.sin(0)) #0 from math import sin print(sin(0)) from math import sin as f print(f(0)) import numpy as np print(np.random.randn(3,3)) # [[ 1.22524688 1.40990719 1.49014802] # [-1.3915769 -0.50625637 -0.38625091] # [-1.39770585 -1.52630576 -0.5186793 ]]
复制代码


  • 数据类型



## 6. 输入和输出
* 输入
* ```python # # raw_input将数据进行原样的输入----都是str类型 # # input 输入的类型原样的输入-----如果输入的是数值输出的就是对应的类型 # # 否则input输入的是字符类型的话必须加引号 # # age = raw_input("Please input your age:") # # print(age) # # print(type(age)) # age = input("Please input your age:") # print(age) # print(type(age)) #python3中输入的语句合二为一input和python2的raw_input是一致的 input1 = input("please input your age:") print(input1) print(type(input1))
复制代码


  • 输出



* 随机数的产生
* 为什么需要随机数?因为获取现实 的数据是非常困难的,可以模仿现实的数据去产生新数据
* 产生一个简单的随机数
* 产生一个符合正态分布的随机数
* 产生一个符合卡方分布的随机数
* ```python import random # - 产生一个简单的随机数 print(random.random()) print(random.randrange(1,10)) # - 产生一个符合正态分布的随机数 import numpy as np print(np.random.randn(3,3)) # [[-0.65330669 -2.17752451 -0.59458216] # [-1.25848013 1.06000312 -0.21712177] # [-1.5914388 0.59092913 0.56820017]] # - 产生一个符合卡方分布的随机数 # df叫做自由度--越大越接近于正态分布 print("chisuare test:\n",np.random.chisquare(3,(3,3))) print("chisuare test:\n",np.random.chisquare(df=3,size=(3,3)))
复制代码

7. Python 的数据结构

  • 列表

  • 字典

  • 元祖

  • 集合

  • 代码:



## 8. Python的列表
* list
* 切片操作:
* ```python #创建 l1 = [1, 2, 3, 4] l2 = list((1,2,3,4)) l3 = list({1,2,3,4}) l4 = list({1:"apple",2:"banana",3:"ok",4:"hello"}) print(l1) print(l2) print(l3) print(l4) num=range(10) print(num)#[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] range(0, 10) print(type(num))#<type 'list'> <class 'range'> print(list(num)) #切片操作[start:stop:step ] l5 = list(range(10)) print(l5) print(l5[::]) print(l5[0::]) print(l5[0:2:]) print(l5[0:2]) print(l5[::-1]) print(l5[1::2]) print(l5[::2]) print(l5[1:3]) #1-2
复制代码

9. Python 的列表的函数

  • list 的多种创建方法

  • list 的切片操作

  • list 的 zip 函数和 enumerate 函数

  • list 的基本的操作函数


  l1 = list(range(10))  print(l1)  print(l1[0])  # 列表操作包含以下函数:  # 1、cmp(list1, list2):比较两个列表的元素---在Python3中取消了cmp函数,在Python2中可用的  # 2、len(list):列表元素个数  print(len(l1))  # 3、max(list):返回列表元素最大值  print(max(l1))  # 4、min(list):返回列表元素最小值  print(min(l1))  # 5、list(seq):将元组转换为列表  # 列表操作包含以下方法:  # 1、list.append(obj):在列表末尾添加新的对象  l1.append("apple")  print("result value is:",l1)  # 2、list.count(obj):统计某个元素在列表中出现的次数  print("list count:",l1.count("apple"))  # 3、list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)  l1.extend([6,7,8,9])  print("change x value is:",l1)  # 4、list.index(obj):从列表中找出某个值第一个匹配项的索引位置  print(l1.index("apple"))  # 5、list.insert(index, obj):将对象插入列表  l1.insert(10,"pear")  print(l1)  # 6、list.pop(obj=list[-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值  print(l1.pop())  print(l1.pop())  # 7、list.remove(obj):移除列表中某个值的第一个匹配项  l1.remove("apple")  print(l1)  # 8、list.reverse():反向列表中元素  l1.reverse()  print(l1)  print(l1[::-1])  # 9、list.sort([func]):对原列表进行排序  l1.sort(key=lambda x:len(str(x)),reverse=False)  print(l1)
复制代码


发布于: 刚刚阅读数: 5
用户头像

InfoQ签约作者 2020.11.10 加入

文章首发于公众号:五分钟学大数据。大数据领域原创技术号,深入大数据技术

评论

发布
暂无评论
Python基础详解(一)_Python_五分钟学大数据_InfoQ写作社区