Python3从零基础到入门(1)

news2024/11/25 14:57:30

目录

一、环境搭建

1.检测Python环境

2.下载安装Python环境

3.VSCode中配置Python环境

二、第一个程序

1.编码

2.输出

3.标识符

4.import

5.保留字

6.注释

7.缩进

三、变量和赋值

1.Python 中的变量

2.变量的赋值

3.多个变量赋值

四、基础数据类型

1.类型查看

(1)type

(2)isinstance

2.数字

3.字符串

4.元组

5.列表

6.字典

7.集合

五、数据类型转换

1.隐式类型转换

2.显式类型转换

(1)转换成整数

(2)转换成浮点数

(3)转换成复数

(4)转换成字符串

(5)转换成表达式字符串

(6)字符转换

1)整数转字符

2)字符转整数

(7)转换成基础数据结构

1)转换成元组

2)转换成列表

3)转换成可变集合

4)转换成不可变集合

5)转换成字典

六、解释器

1.交互式编程

2.脚本式编程

七、注释

1.单行注释

2.多行注释

(1)单引号

(2)双引号


一、环境搭建

1.检测Python环境

我们可以先检测本机中有无自带Python环境
在Windows桌面下,点击 win +r 按键,换出运行界面,在输入框中输出cmd,打开命令行窗口。

在命令行窗口中输入命令 python --version ,若没有显示,则表明无对应的Python环境。

如下所示:

2.下载安装Python环境

1.进入Python官网: www.python.org/

2.在上方downloads按钮下拉框中,选择对应的系统,在这里我选择Windows系统。

3.我们可以看到,在下载界面,左侧Stable Releases是稳定版,右侧Pre-releases是预发布版。

  • 稳定版是经过一定测试后,可以供用户正式使用的版本,通常不会包含太多新功能,而是主要着重于修复已知的问题和缺陷
  • 预发布版是指尚未正式发布的、处于测试阶段的版本,通常会包含一些新的功能和改进,用户可以先行体验和测试,以便在正式发布前发现和解决一些问题。

我们根据自己电脑的系统类型选择一个稳定版即可。我的系统类型为64位操作系统,因此选择64位安装包,如下图所示。

下载完进行安装

选择自定义或者默认安装,在这里我选择自定义安装

一般默认全选即可,随后点击next下一步

高级选项界面,只需要修改安装目录,其余默认勾选即可。如下图所示。注意: 安装目录中最好不要携带中文字符。点击Install安装即可。

3.VSCode中配置Python环境

打开VSCode,点击左侧扩展按钮,在搜索框中输入python,选择第一个进行安装

随后创建第一个python文件,测试如下:

二、第一个程序

1.编码

默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码文件指定不同的编码,例如:

# -*- coding: cp936 -*-

上述定义允许在源文件中使用 Windows-936 字符集中的字符编码。

2.输出

在Python中,输出函数为print(),用法如下:

print(6)

a = 6
print(a)

print("6")

输出结果如下:

其中 a 是标识符,也是变量,"6" 则代表字符串。

3.标识符

标识符的规定如下

  • 1.第一个字符必须是字母表中字母、或下划线_。
  • 2.标识符的其他的部分由字母、数字和下划线组成
  • 3.大小写敏感

在 Pvthon 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的,例如:

niubi = 6
print(niubi)

小佳牛逼 = 6
print(小佳牛逼)

输出结果如下:

4.import

当需要引入一些其它模块时,可以用 import,例如:

import os
print(os.getpid())

以上代码,代表获取当前进程的进程ID。

5.保留字

保留字就是关键字,不能把它们作为任何标识符的名称。

Python的标准库提供了一个 keyword模块,可以输出当前版本下的保留字,例如:

import keyword
print(keyword.kwlist)

输出结果如下:

6.注释

Python的注释以 # 开头,例如:

# 注释你好
print("zgl") # 注释你好

输出结果如下:

7.缩进

Python 对缩进有严格要求,不需要使用{},例如:

if 2 > 1:
    print("666")
else:
    print("555") 

同一个代码块必须包含相同的缩进数,例如:

if 2 > 1:
    print("666")
    print("666") # 正确
else:
    print("555") 
     print("555") # 错误

三、变量和赋值

1.Python 中的变量

1)Python 中的变量不需要声明
2)每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建
3)在 Python 中,变量就是变量,它没有类型,我们所说的"类型”是变量所指的内存中对象的类型

2.变量的赋值

= 用来给变量赋值。= 运算符左边是一个变量名,= 运算符右边是存储在变量中的值。例如:

a = 6       # 整型变量
b = 6.0     # 浮点型变量
c = "6"     # 字符串变量
print(a, b, c)

输出结果如下:

注意,字符串变量输出时,是不带引号的。

3.多个变量赋值

Python 中允许为多个变量进行赋值。例如:

a = b = c = 6
print(a, b, c)

这段代码表示的是,创建一个整型对象,从后向前赋值。四个变量的值最终都为6,输出结果如下:

我们也可以这样赋值:

a, b, c = 1, 2, 3
print(a, b, c)

输出结果如下:

四、基础数据类型

Python3 中的基础数据类型,主要分为两种: 不可变数据 和 可变数据

其中不可变数据是: Number (数字) 、String (字符串) 、Tuple (元组)

而可变数据是: List (列表) 、Dictionary (字典) 、Set (集合)。

1.类型查看

(1)type

可以使用内置的函数 type() 函数,来查看变量所指的对象类型。例如:

a = 1
b = 1.0
c = "1"
d = 1,
e = [1]
f = {1:1}
g = {1}

print(type(a))
print(type(b))
print(type(c))
print(type(d))
print(type(e))
print(type(f))
print(type(g))

输出结果如下:

(2)isinstance

也可以通过 isinstance() 来对一个数据类型询问是否是某个类型,例如:

a = 6

print(isinstance(a, int))
print(isinstance(a, float))

输出结果如下:

其中 True 和 False 是 Python 中的布尔类型,分别表示真和假。

2.数字

Python3 支持 int、float、 bool (布尔) 、complex (复数)。

Python3 中的整型不同于 C语言,数字可以表示的非常大,例如:

print (2 ** 100)

这段代码代表输出 2 的 100 次幂,输出结果如下:

关于数字更多相关内容后续再总结。

3.字符串

Python 中的字符串 是用 ' 或者 " 这两种引号引起来的内容,例如:

print('字符串1')
print("字符串2")

关于字符串更多相关内容后续再总结。

4.元组

元组是一种不可变的顺序表

关于元组更多相关内容后续再总结。

5.列表

列表是一种可变的顺序表

关于列表更多相关内容后续再总结。

6.字典

字典是一种键值对

关于字典更多相关内容后续再总结。

7.集合

集合是一种值的集合

关于集合更多相关内容后续再总结。

五、数据类型转换

数据类型转换主要分为两种

  • 隐式类型转换
  • 显式类型转换

1.隐式类型转换

在隐式类型转换中,Python 会自动将一种数据类型转换成另一种数据类型,不需要人为去干预。比如当我们在进行算术运算的时候,较低数据类型(整数)就会转换成较高数据类型(浮点数)以免数据丢失。例如:

a = 6
b = 6.0
c = a + b

print(type(c))
print(c)

输出结果如下:

那么如果整数和字符串相加后,类型是什么呢? 

a = 6
b = "6"
c = a + b

print(type(c))

我们看到在执行 a +b 的时候,报了一个错,意思是 int 和 str 不能执行 + 操作,于是,我们可以通过显式类型转换来解决这个问题。

2.显式类型转换

我们只需要简单的把上述代码改成如下形式,就可以执行相加操作了:

a = 6
b = float("6")
c = a + b

print(type(c))

接下来,我们看看以下几个类型转换:

(1)转换成整数

例如:

a = int("1010", 2)
b = int("66", 10)
c = int("0xff", 16)
        
print(a)
print(b)
print(c)

输出结果如下:

(2)转换成浮点数

将一个字符串对象转换成了浮点数,例如:

a = float("66.66")

print(a)

输出结果如下:

(3)转换成复数

例如:

a = complex(6, 6)

print(a)
print(type(a))

输出结果如下:

(4)转换成字符串

例如:

a = 66.66
b = str(a)

print(b)

输出结果如下:

(5)转换成表达式字符串

使用 repr(x) 可以将 x 转换成表达式字符串,例如:

a = '66.66'
b = str(a)
c = repr(a)

print(b)
print(c)

输出结果如下:

(6)字符转换

1)整数转字符

chrcharacter的缩写

可以利用 chr(x) 将整数x 转换成字符,类似C语言中的 ASCII 码,例如:

a = 65
b = chr(a)
print(b)

输出结果如下:A 的 ASCII 码是 65 。

2)字符转整数

ordordinal的缩写

可以利用 ord(x) 将字符 x 转换成一个整数,它是 chr(x) 的逆运算,例如:

a = 'A'
b = ord(a)
print(b)

输出结果如下:

(7)转换成基础数据结构

关于基础数据结构更多相关内容后续再总结,这里只是简单列出。

1)转换成元组

tuple(s)

2)转换成列表

list(s)

3)转换成可变集合

set(s)

4)转换成不可变集合

frozenset(s)

5)转换成字典

dict(d)

六、解释器

1.交互式编程

我们可以在命令行输入 Python,来启动 Python 解释器:

如下图:可以在里面输入你想测试的代码,最后quit()退出

2.脚本式编程

当然,我们也可以把上面的内容,拷贝到一个文件 test.py 中,然后利用命令行去执行:

python3 test.py

同样可以看到输出的结果:12

七、注释

1.单行注释

单行注释以 # 开头,例如:

# 这是注释
print("zgl")

2.多行注释

(1)单引号

多行注释,可以这么写:

'''
这是注释
'''

(2)双引号

也可以这么写:

"""
这是注释
"""

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1366469.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智能音箱喇叭杂音问题

智能音箱喇叭杂音问题 智能音箱生厂或出货过程会遇到多种喇叭播放有杂音的问题. 螺丝不匹配 智能音箱设备在生产过程,会有SPL测试喇叭失真,发现不良率8%的杂音问题. 分析原因是来料导入了新螺丝, 使用过程进入异物…

harmonyOS 时间选择组件(TimePicker)

本文 我们来说 TimePicker 时间组件 首先 我们搭一个最基本的组件骨架 Entry Component struct Index {build() {Row() {Column() {}.width(100%)}.height(100%)} }然后 在 Column 组件内 放一个 TimePicker进去 这里 我们就可以看到 一个时间的选择器了 DatePicker 捕获当前…

EPQ艾森克人格测试 49题(免费版)

艾森克人格提出人格的三个基本因素:性格内外向E、神经质N(也叫情绪性)和精神质P。这三个维度的不同程度组合,形成了独立的个体人格特征。 其中性格内外向维度是目前评估性格内向和外向的成熟量表,神经质和精神质为人格…

机器人技能学习-robosuite-0-入门介绍

文章目录 前言模块介绍实战案例1:从 demo 中创建自己的 env案例2:更换属于自己的物体 前言 资料太少、资料太少、资料太少,重要的事说三边,想根据自己实际场景自定义下机器人,结果发现无路可走,鉴于缺少参…

Maven初学Day1

1.Maven是什么? 是一个构建工具,可以自动化构建过程、任务。是一个项目模型 2.作为构建工具有什么特点 1.跨平台,可以在多个操作系统上使用 2.对外提供一致的操作接口 3.Maven官网 https://maven.apache.org/download.cgi 4.安装步骤 …

卷积神经网络|迁移学习-猫狗分类完整代码实现

还记得这篇文章吗?迁移学习|代码实现 在这篇文章中,我们知道了在构建模型时,可以借助一些非常有名的模型,这些模型在ImageNet数据集上早已经得到了检验。 同时torchvision模块也提供了预训练好的模型。我们只需稍作修改&#xf…

外延炉及其相关的小知识

外延炉是一种用于生产半导体材料的设备,其工作原理是在高温高压环境下将半导体材料沉积在衬底上。 硅外延生长,是在具有一定晶向的硅单晶衬底上,生长一层具有和衬底相同晶向的电阻率且厚度不同的晶格结构完整性好的晶体。 外延生长的特点&…

Linux实验——页面置换算法模拟

页面置换算法模拟 【实验目的】 (1)理解虚拟内存管理的原理和技术。 (2)掌握请求分页存储管理的思想。 (3)理解常用页面置换算法的思想。 【实验原理/实验基础知识】 存储器是计算机系统的重要资源之…

腾讯面试总结

腾讯 一面 mysql索引结构?redis持久化策略?zookeeper节点类型说一下;zookeeper选举机制?zookeeper主节点故障,如何重新选举?syn机制?线程池的核心参数;threadlocal的实现&#xff…

揭开JavaScript数据类型的神秘面纱

🧑‍🎓 个人主页:《爱蹦跶的大A阿》 🔥当前正在更新专栏:《VUE》 、《JavaScript保姆级教程》、《krpano》 ​ ​ ✨ 前言 JavaScript作为一门动态类型语言,其数据类型一直是开发者们关注的话题。本文将深入探讨Jav…

C语言算法(二分查找、文件读写)

二分查找 前提条件&#xff1a;数据有序&#xff0c;随机访问 #include <stdio.h>int binary_search(int arr[],int n,int key);int main(void) {}int search(int arr[],int left,int right,int key) {//边界条件if(left > right) return -1;//int mid (left righ…

MidTool的AIGC与NFT的结合-艺术创作和版权保护的革新

在数字艺术和区块链技术的交汇点上&#xff0c;NFT&#xff08;非同质化代币&#xff09;正以其独特的方式重塑艺术品的收藏与交易。将MidTool&#xff08;https://www.aimidtool.com/&#xff09;的AIGC&#xff08;人工智能生成内容&#xff09;创作的图片转为NFT&#xff0c…

数据库基础知识1

目录 数据库的使用 登录mysql 命令语法 常用命令 ​编辑 navicat建立连接 mysql授权管理命令 ​编辑mysql权限 数据导入导出 实例 数据导出 未登录 已经登录 导出导入的代码对比 ​编辑 导入导出的一个坑 python的导入导出 数据库基础知识 特点 需要掌握的程…

嵌入式——循环队列

循环队列 (Circular Queue) 是一种数据结构(或称环形队列、圆形队列)。它类似于普通队列,但是在循环队列中,当队列尾部到达数组的末尾时,它会从数组的开头重新开始。这种数据结构通常用于需要固定大小的队列,例如计算机内存中的缓冲区。循环队列可以通过数组或链表实现,…

使用Docker-compose快速构建Nacos服务

在微服务架构中&#xff0c;服务的注册与发现扮演着至关重要的角色。Nacos&#xff08;Naming and Configuration Service&#xff09;是阿里巴巴开源的服务注册与发现组件&#xff0c;致力于支持动态配置管理和服务发现。最近&#xff0c;一位朋友表达了对搭建一套Nacos开发环…

速卖通店铺销量飙升:掌握自养号测评(补单),轻松提升销售量

很多卖家在经营速卖通店铺时&#xff0c;都希望能提高自己店铺的曝光率。但对于一些新手卖家来说&#xff0c;可能不太清楚曝光率的具体含义以及如何提升。那么&#xff0c;让我们一起来探讨一下这个问题。 曝光率&#xff0c;简而言之&#xff0c;是指您的店铺和产品展示给顾…

springboot git配置文件自动刷新失败问题排查

http://{ip}:{port}/refresh 说明&#xff1a;springBoot版本是1.5.9&#xff0c;接口路径与2.x&#xff0c;不同 路径区别&#xff1a;/refresh VS /actuator/refresh 用postman调用refresh接口刷新git配置&#xff0c;报错如下&#xff0c;没有权限 在服务本地启动&#…

【Java】2023年业务实践中遇到的所有OOM情况及实战总结

OOM分析&实战 引言&#xff1a;一、JVM内存结构二、JVM OOM错误情况三、实践案例一案例二案例三 四、总结五、分析工具推荐六、参考文献 引言&#xff1a; 在Java开发中&#xff0c;随着应用程序变得越来越复杂&#xff0c;内存管理问题也变得愈加重要。而在JVM中的"O…

笔试案例2

文章目录 1、笔试案例22、思维导图 1、笔试案例2 09&#xff09;查询学过「张三」老师授课的同学的信息 selects.*,c.cname,t.tname,sc.score from t_mysql_teacher t, t_mysql_course c, t_mysql_student s, t_mysql_score sc where t.tidc.cid and c.cidsc.cid and sc.sids…

数据结构-测试6

一、判断题 1.若一个栈的输入序列为{1, 2, 3, 4, 5}&#xff0c;则不可能得到{3, 4, 1, 2, 5}这样的出栈序列。&#xff08;T&#xff09; 3比4先进&#xff0c;所以3比4后出&#xff0c;所以不可能得到 2. 在二叉排序树中&#xff0c;每个结点的关键字都比左孩子关键字大&…