我的python笔记

这篇博客介绍了Python的基础知识,包括Anaconda和jupyter的安装配置,Python的转义字符、数据类型、运算符、循环语句和字符串格式化。接着深入讲解了Python的Numpy库,涵盖Numpy的数据类型、多维数组创建、数组的维度和形状以及随机数的生成。适合初学者学习Python和Numpy。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、Anaconda以及jupyter的准备工作

二、python基础

1、python中转义字符   

2、python数据类型

2.1 Number(数字)

2.2 String(字符串)

2.3 List(列表)

2.4 Tuple(元组)

2.5 Set(集合)

2.6 Dictionary(字典)

3、python运算符

4、python循环语句

4.1 while语句

4.2 for 语句

4.3 break和continue语句及循环中的else子句

4.4 pass语句

5、python字符串格式化输出

三、python训练简记

3.1  字符串格式化

四、Numpy

4.1 关于Numpy 

4.2 Numpy所支持的数据类型

4.3 Numpy多维数组创建(5种常用方法)

4.4 数组的维度和形状

4.4.1 维度

 4.4.2 形状

4.4.3 数组的操作

​4.5 Numpy随机数


一、Anaconda以及jupyter的准备工作

           Anacond的安装过程较为简单,具体的可以参考知乎https://www.zhihu.com/question/46309360/answer/254638807,这里面关于Anaconda以及jupyter的安装教程还算详细的。

          其中,有两种常见问题:

          1)Anaconda安装后,点击anaconda navigator后,一直卡在loading application界面。

           关于这个问题,网上给出的原因很多,我也试过不少。比较有效的解决方案是:进入F:\Anaconda\Lib\site-packages\anacondanavigator\api\anaconda_api.py     即你anaconda的安装路径,找到anaconda_api.py,将811行的将versions=[vsdata.get('productVersion')],   改成 versions=["1b8e8302e405050205e69b59abb3559592bb9e60"],  问题基本上可以解决。

         2)cmd不具备anaconda prompt的某些功能

              当你安装anacond后,一般情况下可以在cmd上查询一些版本信息之类的,比如conda --version等。但是初次安装后,我发现cmd一直提示conda不是内部命令,很多anaconda的操作都无法执行,但是anaconda prompt却可以正常使用。这个主要是在安装过程没有将script加入环境变量。网上也有一些修改环境的方法,我试过好多种,效果不佳。可以考虑卸载重装,在安装过程勾选红色部分,(默认状态是未勾选的)

2、jupyter的虚拟环境准备

创建新的虚拟环境   conda create -n myenv python=2.7

查询所有环境   conda env list

激活某环境   conda activate myenv 

退出当前虚拟环境    deactivate即可(或者conda activate root,返回base环境)

查询安装的那些数据包 conda list

安装某个包  conda install package_name(包名)       

将新的环境加入jupyter中

1)安装ipykernel   :  conda install ipykernel

2) 将环境写入notebook的kernel中: python -m  ipykernel install --user --name test

通过jupyter kernelspec remove test删除环境

3、关于jupyter中的断点调试

在需要breakpoint的地方插入import pdb; pdb.set_trace(),运行后会进入debugger,有一个交互界面。

二、python基础

1、python中转义字符   

参考链接:https://www.cnblogs.com/Gaoqiking/p/11254505.html 

这其中:\r 能将光标定位到当前行的行首

               \b则是将光标退回一位

               光标的含义:光标后面的输出内容均会消失,光标回退后,后面位置的内容都会被抹除。

2、python数据类型

     (1)关于python 单引号、双引号问题。在字符串输出,单双引号输出其实没啥差别。但是在实际应用中,单双引号的使用要视情况而定,详细可参考:https://blog.youkuaiyun.com/woainishifu/article/details/76105667

     (2)python3中6个标准的数据类型:Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Set(集合)、Dictionary(字典)

         概述字符串常见形式:str = ('my')或者(“my”),两种方式均可;

                     列表:以[]来创建,list1 = ['Google', 'Runoob', 1997, 2000]  or   list2 = [1, 2, 3, 4, 5 ]   or   list3 = ["a", "b", "c", "d"]    or   list4 = ['red', 'green', 'blue', 'yellow', 'white', 'black'] 均可,且列表元素可修改;

                     元组:使用(),tup1 = ('Google', 'Runoob', 1997, 2000)  or tup2 = (1, 2, 3, 4, 5 )  or  tup3 = "a", "b", "c", "d"   #  不需要括号也可以;但是元组的元素不可被修改;

                     字典:使用{},键值对 如  : dict = {'name': 'runoob', 'likes': 123, 'url': 'www.runoob.com'};

                     集合:大括号{},或者set();但是创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

------------------------------------------------------------------------------------------------------------------------------

Number:float、bool、complex、int(python3中无long整型)

String:“my”或者‘my’ 单双引号均可

              但字符串不可被修改;+ 可进行str拼接,*可进行重复运算

              索引切片时,str[2:5],不包含索引号为5的值

List:[ ‘1’,‘2’  ],元素逗号间隔;

         + 可进行str拼接,*可进行重复运算

         元素可被修改

Tuple:(  )    ;元素逗号间隔,与list类似

            但元素不可被修改

            0或1个元素的元组,由特定语法创建tup1=()  空元组;tup2=(20, ) 只含一个元素的元组

Set:{   }或者set ()均可创建

        元素可被修改

        空集合只能由set()创建

Dictionary:{   };键值对,健唯一,但值未必

----------------------------------------------------------------------------------------------------------------------------

2.1 Number(数字)

              Python3 支持 int、float、bool、complex(复数);在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。内置的 type() 函数可以用来查询变量所指的对象类型。

              

              详细内容参考:https://www.runoob.com/python3/python3-number.html 

2.2 String(字符串)

           Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符。注意,python字符串不能被改变

           

           值得留意的是:print(str[2:5])指的是输出noo,并不包含索引号为5的字符b;但是str[2:]则会输出至5,即索引号为3后的所有字符。

          

             详细内容参考:https://www.runoob.com/python3/python3-string.html

2.3 List(列表)

        

       

                List的截取,注意步长所指间隔,如list[1:4:2],步长为2,即间隔一个数,如下图:

               

                详细内容参考:https://www.runoob.com/python3/python3-list.html

2.4 Tuple(元组)

      与列表List类似,但是元组的元素不可以被更改。元组写在小括号 () 里,元素之间用逗号隔开。它的基本操作与list也类似

      

     构造包含0个或1个元素的元组比较特殊,需要额外的语法规则:  

tup1 = ()    # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号

    注意:

  • 1、与字符串一样,元组的元素不能修改。
  • 2、元组也可以被索引和切片,方法一样。
  • 3、注意构造包含 0 或 1 个元素的元组的特殊语法规则。
  • 4、元组也可以使用+操作符进行拼接/

    详细内容参考:https://www.runoob.com/python3/python3-tuple.html

2.5 Set(集合)

       集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。基本功能是进行成员关系测试和删除重复元素。可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

      详细内容参考:https://www.runoob.com/python3/python3-set.html

2.6 Dictionary(字典)

        字典(dictionary)是Python中另一个非常有用的内置数据类型。列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。键(key)必须使用不可变类型。在同一个字典中,键(key)必须是唯一的。

        

        详细内容参考:https://www.runoob.com/python3/python3-dictionary.html

3、python运算符

     具体内容可阅读:https://www.runoob.com/python3/python3-basic-operators.html

     比较容易混淆的主要是逻辑运算符  and/or/not   这三个的优先级为 not   and  or  (由左至右)

4、python循环语句

Python 中的循环语句有 for 和 while。

4.1 while语句

在 Python 中没有 do..while 循环。

while 判断条件(condition):
    执行语句(statements)……

while循环使用else语句:

如果 while 后面的条件语句为 false 时,则执行 else 的语句块。

4.2 for 语句

Python for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。

在for 实例中使用了 break 语句,break 语句用于跳出当前循环体:

4.3 break和continue语句及循环中的else子句

break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。

continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

循环语句可以有 else 子句,它在穷尽列表(以for循环)或条件变为 false (以while循环)导致循环终止时被执行,但循环被 break 终止时不执行。

4.4 pass语句

Python pass是空语句,是为了保持程序结构的完整性。pass 不做任何事情,一般用做占位语句

5、python字符串格式化输出

详细参考:https://blog.youkuaiyun.com/qq_29720657/article/details/102771436

在程序中,看到%s这样的操作符,这就是python中字符串格式化的符号。除此之外,还可以用%符号对其他类型的数据进行格式化。常见的格式化符号如下表。

三、python训练简记

3.1  字符串格式化

 "N={}, Sum={}".format(N,sum) 称为字符串格式化,大括号和其中的字符会被替换成传入 str.format() 的参数,也即 N 和 Sum。其中 {:.2f} 的意思是替换为 2 位精度的浮点数。

四、Numpy

以下内容来源于蓝桥云课内容:https://www.lanqiao.cn/courses/912/learning?id=3406

4.1 关于Numpy 

     Numpy的英文全称为 Numerical Python,意味 Python 面向数值计算的第三方库。NumPy 的特点在于,针对 Python 内建的数组类型做了扩充,支持更高维度的数组和矩阵运算,以及更丰富的数学函数。NumPy 是 Scipy.org 中最重要的库之一,它同时也被 Pandas,Matplotlib 等我们熟知的第三方库作为核心计算库。当你在单独安装这些库时,你会发现同时会安装 NumPy 作为依赖。

4.2 Numpy所支持的数据类型

4.3 Numpy多维数组创建(5种常用方法)

  • 从 Python 数组结构列表,元组等转换。
  • 使用 np.arangenp.onesnp.zeros 等 NumPy 原生方法。
  • 从存储空间读取数组。
  • 通过使用字符串或缓冲区从原始字节创建数组。
  • 使用特殊函数,如 random

这一部分主要包括各类ndarray的创建,zero、ones、eye等,以及数组属性的输出

详细创建方法阅读:https://www.lanqiao.cn/courses/912/learning?id=3406

4.4 数组的维度和形状

4.4.1 维度

 4.4.2 形状

在numpy中,可以通过.shape查看数组的形状:

4.4.3 数组的操作

常见的操作包括:reshape 、concatenate(拼接)、split(拆分)、resize、append等

详见:https://www.lanqiao.cn/courses/912/learning?id=3406 数组基本操作部分

4.5 Numpy随机数

NumPy 的随机数功能非常强大,主要由 numpy.random 模块完成。

 numpy.random.rand(d0, d1, ..., dn) 方法的作用为:指定一个数组,并使用 [0, 1) 区间随机数据填充,这些数据均匀分布。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值