快速入门Python3并使用(连载中...)

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:

bash 复制代码
# python中使用#进行单行注释
print("hello world\n")

C:

arduino 复制代码
#include <stdio.h>//引入头文件
int main()//主函数入口,C/C++标准中规定了main函数不能使用void作为返回类型
{
    printf("hello world\n");
}

这里提一点,如果有同学在学习单片机时遇到void main () {}的情况,记得注意一下,这是错误的

C++:

arduino 复制代码
#include <iostream>//引入头文件
using namespace std;//引入命名空间
int main()
{
    cout<<"hello world\n";
    //std::cout<<"hello world\n";//如果不使用命名空间,则必须使用std作用域
}
python C/C++
import cmath 导入模块,每一个.py文件都可以认为是一个模块。Python中导入的模块可以是类的定义,函数的定义 #incluce 引入头文件,头文件为类或函数的声明。C++支持分离式编译,对源文件分别编译成目标文件,再链接生成可执行文件。通过头文件把源文件关联起来。
不需要声明数据类型,系统自动识别 需要声明,数据类型代表内存分配,要求严格
一切皆对象(数据类型、函数、类都是对象)。对象包含identity(Python中即为对象的内存地址,一旦创建不再改变)、类型信息、值、引用计数(用于记录当前有多少个变量在引用这个对象。一旦引用计数器为0,那么该对象就会被系统自动回收) 一块能存储数据并具有某种类型的内存空间
每一行都是单独的语句,不需要分号作为结束的标志。当一行语句需要分开时,用 \连接,在 [], {}, 或 () 中的多行语句,不需要使用反斜杠 \,系统会自动识别 需要分号作为语句结束的标志
用 : 和缩进来表示作用域 用( )和{ }表示作用域
注释用#和''',vscode中的快捷键是 ctrl + / 注释用//和/* */
没有引用 有引用&,&运算符重载,既可以代表引用,又可以代表取地址,视语境决定
没有指针,万物皆对象,通过解运算符使用类的方法 指针就是C/C++的灵魂,有点复杂
python中的数组叫列表list,而列表中的数据类型可以不同,所以严格意义上来说,列表并不等同于C/C++中的数组 数组必须声明元素个数或者直接赋值,目的是确定数组占用的内存大小,数组不能动态分配内存,数组的元素类型必须相同,比如有整形数组、浮点型、指针数组等,这里还涉及到内存对齐的问题,就不过多赘述
单引号和双引号都能表示字符串和字符,差别不大 单引号表示字符,双引号表示字符串

python中的重要特性

缩进

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文件中的内容如下,这里使用的清华源的镜像,大家用阿里、中科大的都行

ini 复制代码
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com

完成这项配置后就可以快速安装各种开源库了。

快速学习Pandas库

python爬虫

相关推荐
_.Switch22 分钟前
高级Python自动化运维:容器安全与网络策略的深度解析
运维·网络·python·安全·自动化·devops
测开小菜鸟2 小时前
使用python向钉钉群聊发送消息
java·python·钉钉
萧鼎3 小时前
Python并发编程库:Asyncio的异步编程实战
开发语言·数据库·python·异步
学地理的小胖砸3 小时前
【一些关于Python的信息和帮助】
开发语言·python
疯一样的码农3 小时前
Python 继承、多态、封装、抽象
开发语言·python
Python大数据分析@3 小时前
python操作CSV和excel,如何来做?
开发语言·python·excel
黑叶白树3 小时前
简单的签到程序 python笔记
笔记·python
Shy9604184 小时前
Bert完形填空
python·深度学习·bert
上海_彭彭4 小时前
【提效工具开发】Python功能模块执行和 SQL 执行 需求整理
开发语言·python·sql·测试工具·element
zhongcx014 小时前
使用Python查找大文件的实用脚本
python