python3.8.6和VScode的装置
我的电脑现已装置过了,就不重复装置了,这儿从csdn上找几篇文章里边的图片,给我们简述一下流程。
Python有自己专属的IDE——PyCharm,不过我电脑上现已装置了VSCode,所以就用VSCode来开发了,并且自己也习惯这种黑色了,是的,这是一种深沉的黑色,Just like me …
进入python网站:Python Releases for Windows | Python.org这儿直接给出适用于Windows的python网站了
假如整个进程较慢,请百度怎么科学上网……
总共五步,记得勾选自动增加环境变量,除非你想手动装备
python3基础语法
太简略的东西就不赘述了,我的主张是菜鸟编程,这儿附上网址。Python3 教程 | 菜鸟教程 (runoob.com) 下面重点说一下把握C/C 之后,怎么快速学习python。
我前两天刚开端写python时,我的内心:这东西怎么写起来这么别扭呢???
现在:python也叫编程言语??小小python,直接拿下!
当你粗略浏览任何一本关于python的书或许是教程,你会发现比较于C/C 这种语法要求严厉的编程言语,python显得非常灵活甚至是随意,只用缩进就表达了句子的效果域。同时,python还省去了类型阐明而是让体系自己去识别,这相似C 中的auto关键字,而在python中,auto关键字都不必写,这简直太爽了,所有代码都是为了逻辑完成,高效开发到了极致,学习门槛也低到了极致。
我这两天作业因要帮助隔壁项目组做大数据剖析,临时学习了这门言语并感触到了它的强壮。丰厚的开源库和简略的运用方式,让全部程序开发都变得简略,这些库适用于不同的场景。python牛逼,开源精神牛逼!
对于大多数同学来说,接触的榜首门编程言语一般是C/C ,这部分就简述C/C 和python的差异,让读者快速把握python基础。
C/C 和python的差异
C言语面向进程,而Python和C 都是面向目标的。
Python是脚本言语,脚本言语不需求编译,直接解说执行,由解说器来担任解说。程序代码便是脚本程序,也是可执行文件,只需求编写-运转。 C/C 是编译型编程言语,需求编译成二进制代码,以可执行文件方式运转,需求经过编写-编译-链接-运转的进程。
先来hello world 一下,谁杂乱,谁简略,一眼便知
python:
# python中运用#进行单行注释
print("hello worldn")
C:
#include <stdio.h>//引进头文件
int main()//主函数入口,C/C 标准中规定了main函数不能运用void作为回来类型
{
printf("hello worldn");
}
这儿提一点,假如有同学在学习单片机时遇到void main () {}
的状况,记得留意一下,这是过错的
C :
#include <iostream>//引进头文件
using namespace std;//引进命名空间
int main()
{
cout<<"hello worldn";
//std::cout<<"hello worldn";//假如不运用命名空间,则有必要运用std效果域
}
python | C/C |
---|---|
import cmath 导入模块,每一个.py文件都能够以为是一个模块。Python中导入的模块能够是类的界说,函数的界说 | #incluce 引进头文件,头文件为类或函数的声明。C 支持分离式编译,对源文件分别编译成方针文件,再链接生成可执行文件。经过头文件把源文件关联起来。 |
不需求声明数据类型,体系自动识别 | 需求声明,数据类型代表内存分配,要求严厉 |
全部皆目标(数据类型、函数、类都是目标)。目标包括identity(Python中即为目标的内存地址,一旦创立不再改变)、类型信息、值、引证计数(用于记载当时有多少个变量在引证这个目标。一旦引证计数器为0,那么该目标就会被体系自动收回) | 一块能存储数据并具有某种类型的内存空间 |
每一行都是独自的句子,不需求分号作为完毕的标志。当一行句子需求分开时,用 衔接,在 [], {}, 或 () 中的多行句子,不需求运用反斜杠,体系会自动识别 | 需求分号作为句子完毕的标志 |
用 : 和缩进来表明效果域 | 用( )和{ }表明效果域 |
注释用#和”’,vscode中的快捷键是 ctrl / | 注释用//和/* */ |
没有引证 | 有引证&,&运算符重载,既能够代表引证,又能够代表取地址,视语境决定 |
没有指针,万物皆目标,经过解运算符运用类的办法 | 指针便是C/C 的魂灵,有点杂乱 |
python中的数组叫列表list,而列表中的数据类型能够不同,所以严厉意义上来说,列表并不等同于C/C 中的数组 | 数组有必要声明元素个数或许直接赋值,目的是确定数组占用的内存大小,数组不能动态分配内存,数组的元素类型有必要相同,比如有整形数组、浮点型、指针数组等,这儿还涉及到内存对齐的问题,就不过多赘述 |
单引号和双引号都能表明字符串和字符,不同不大 | 单引号表明字符,双引号表明字符串 |
python中的重要特性
缩进
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
print ("False") # 缩进不一致,会导致运转过错
这儿弥补一嘴,print ("False")
要么就别缩进,要么就和上面的句子保持一致,缩进多了、少了,都会犯错,所以说,不要站在为难的方位,否则没人要…
单引号、双引号、三引号
Python中单引号,双引号,3个单引号及3个双引号的差异_python 单引号 双引号 差异-CSDN博客
博主写的很好,我就不多说了,抛砖引玉即可
字符串运算符
操控流
切片(顾头不顾尾)
这个示例来自菜鸟教程,咱们在这儿剖析一下,感触切片这个功能的强壮。
上面说Python中万物皆目标,咱们现在就把一个字符串当成一个目标,现在给这个目标来一刀(怎么感觉怪怪的…)是不是就把它劈成两半了?(如同更怪了…)而Python中更狠,给目标一刀劈了三瓣,这儿的冒号便是一把刀,在冒号左边的数字处劈了一刀,右侧数字处又劈了一刀,留下了中心那部分,假如没有数字,那就阐明没劈,这样就保留了头部(或许尾部,或许头部和尾部…)
不过还要留意list的下标从0开端,所以左边是2的话,阐明从第三个开端输出,当然你要是以为在第二个之后劈了一下,然后0、1、2全扔了,保留了第三个和后面的元素,那也行,可谓是不谋而合!这种想法其实更不简单犯错。
print(str[2:5]) # 输出从第三个开端到第六个的字符(不包括)
以这行代码为例,在第二个之后劈了一下,在第五个之后劈了一下,留下的是第3、4、5,总共三个元素
假如有步长要求,能够理解为在保留下来的那部分里边又选取了一次
假如用反向索引,看现在这个比如,在榜首个元素之后劈了一刀,在倒数第二个元素之前劈了一刀,留意这儿是之前,而不是之后。慢慢体会吧~
list = ['Google', 'Runoob', "Zhihu", "Taobao", "Wiki"]
list[1:-2]: ['Runoob', 'Zhihu']
这样一看,切片是不是就相当于把for循环直接写进[:]中了??真是很有想象力的发明
列表list
我们有没有发现,python中的list非常像C 中的vector,因为他们有相似的办法,但list又方便在不同元素的类型能够不同
反向索引:(图源菜鸟编程)
先阐明一下,图片中的tup1是元组。Python 的元组与列表相似,不同之处在于元组的元素不能修正。 元组运用小括号( ),列表运用方括号[ ]。
调查图片,正向索引从0开端,反向索引从-1开端。这个反向索引就非常方便了,咱们之前在C/C 是不能直接找到数组中倒数的某个元素的,有必要先计算得到数组存放了多少元素,python中就省去了这一步。
字典:
Python内存办理与垃圾收回机制
python自动化
增加装备文件,快速下载各种开源库
咱们之前说到,python牛逼就牛逼在它丰厚的运用场景,而这一点就来自于各种强壮的丰厚的开源库。这部分python自动化运用的著名的数学库Numpy和Pandas
咱们先装置Pandas库,一般我们在初次装置时都会呈现报错的状况。图源自csdn
这儿简述一个一劳永逸的办法。
pip.txt文件中的内容如下,这儿运用的清华源的镜像,我们用阿里、中科大的都行
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com
完成这项装备后就能够快速装置各种开源库了。