python简单入门
python简单入门

文章目录
- python简单入门
- 0. 地址链接
- 1. 官网
- 2.2. 下载地址
- 3. 官方文档
- 1. 第一章
- 1.1 python解释器
- 1.2 基础语法
- 1.2.1 常见数据类型
- 1.2.2 强制类型转换
- 1.2.3 注释
- 1.2.4 运算符
- 1.2.5 字符串
- 1.2.5.1 字符串的定义
- 1.2.5.2 字符串拼接
- 1.2.5.3 格式化字符串
- 1.2.5.3 精度格式化
- 1.2.5.4 快速格式化
- 1.2.6 数据输入
- 1.2.7 条件与循环
- 1.2.8 condition与break
- 1.2.9 函数
- 2.2 数据容器
- 2.2.1 列表list
- 2.2.1.1 创建列表
- 2.2.1.2 访问列表数据
- 2.2.1.3 删除元素
- 2.2.1.4 列表的截取
- 2.2.1.5 列表的遍历
- 2.2.2 字符串str
- 2.2.2.1 创建字符串
- 2.2.2.2 访问字符串的值
- 2.2.2.3 字符串拼接
- 2.2.3 字典dict
- 2.2.3.1 创建字典
- 2.2.3.2 获取字典的值
- 2.2.3.3 更新字典
- 2.2.3.4 添加数据
- 2.2.3.5 字典的遍历
- 2.2.4 元组tuple
- 2.2.5 集合set
0. 地址链接
1. 官网
官网
2.2. 下载地址
官网下载地址
3. 官方文档
官方文档
1. 第一章
1.1 python解释器
基本原理 :计算机只认识二进制 0 1
python代码 => python解释器 => 二进制代码 => 执行
安装python环境,本质上就是安装python解释器
1.2 基础语法
1.2.1 常见数据类型
- 数字
- 整型 int 也就是整数,如10 -10等
- 浮点型 float 也就是小数,如3.14 0.66等
- 复数 complex 也就是实数和虚数的组合,如5+3i等
- 布尔型 bool 也就是真假类型,真为True,假为False
- 字符串
- 列表list 有序可重复
- 字典dict 键值对,键唯一
- 元祖tuple 元素不可变
- 集合set 无序不重复
变量的定义,格式:
变量名=变量值,如count=20;,l=list(),dic={'a':10,'b'=666}等
使用type()查看数据类型,如type(10)显示<class 'int'>
变量最好做到见名知意,也就是看到变量名能大概猜到表示什么,比如stock_price表示股票价格,而a b c x等等,用在项目中就不那么舒服了
1.2.2 强制类型转换
- 字符串转换为数字
也就是说,起初类似str=“123”,但类型是字符串类型,不能与数字进行运算,需要强制转换为数字
对于字符串转数字,要求字符串的内容都是数字,如"123","666"等,不能掺杂其他非数字类型,比如"123a","66b5"等
# 转换为整型
num=int(str);
# 或者,转换为浮点型
num=float(str);
- 数字转换为字符串
不希望数字参与运算,转换为字符串类型。
num=10
# 转换为字符串类型
s=str(num)
1.2.3 注释
- 单行注释
#号开头 如# 单行注释
注意# 号后有一个空格(规范) - 多行注释
使用三个 " 包围,如:""" 多行 注释 """ code - 快捷键
ctrl + /
对需要注释的代码,选中后,按下快捷键即可
1.2.4 运算符
| 运算符 | 描述 |
|---|---|
| + | 加法运算 |
| - | 减法运算 |
| * | 乘法运算 |
| / | 除法运算(结果带小数) |
| // | 取整除(结果下取整) |
| % | 取余运算 |
| ** | 指数运算 |
| = | 赋值运算 |
| 复合运算 | 如a=5;a+=1;,相当于a=5;a=a+1;,也就是说a+=1相当于a=a+1,a*=5相当于a=a*5,以此类推 |
1.2.5 字符串
1.2.5.1 字符串的定义
三种方式
- 单引号接收,如 name=‘jack’
- 双引号接收(常用),name=“jack”
- 三引号接收,name=“”“jack”“”
1.2.5.2 字符串拼接
使用+来拼接多段字符串
如s = "abc" + "天气不错" + "666",结果为s = "abc天气不错666"
1.2.5.3 格式化字符串
用在需要拼接的字符串太多,使用占位符先占个位,再补(支持数字类型和字符串类型拼接)
name = "jack"
age = 20
hobby = "sleeping"res="the man %s is %s years old and he likes %s" % (name, age, hobby)
# %表示这是个占位符 s表示需要占位的内容
# the man jack is 20 years old and he likes sleeping
# 代码中数字20,先转换成了字符串,后参与拼接
常用的三种占位
- %s 将内容转换为字符串后拼接
- %d 将内容转换为整型后拼接
- %f 将内容转换为浮点型后拼接
1.2.5.3 精度格式化
使用m.n格式化数值的整数部分和小数部分
若num = 123.4567
%5d为[空格][空格]123
%5.2f为[空格][空格]123.46,小数部分进行四舍五入,若不限制整数部分的宽度,可写成%.2f
1.2.5.4 快速格式化
格式:f"内容{变量}",如
name = "jack"
age = 20res = f"{jack} is {age} years old"
即可完成快速格式化
快速格式化不关心数据类型,也不做精度控制
1.2.6 数据输入
print()用来输出数据
input()用来输入数据,读取键盘输入
格式:
value = input()
input输入的全部作为字符串类型
1.2.7 条件与循环
# 条件
if 条件1为真:code1
elif 条件2为真:code2
else:code3# for 循环 举个例子,遍历从0到9的十个数
for i in range(10):print(i)# while 循环
while 条件为真:code
1.2.8 condition与break
condition用于退出当前的循环,但继续下一次循环
break跳出整个循环,嵌套循环中跳出内循环
1.2.9 函数
def 函数名(参数):函数体code[return 返回值]
"""
对第一章的一些简单注释
极简模式
"""
# 1. 数字
# - 整型 int 也就是整数,如10 -10等
a = 10
# - 浮点型 float 也就是小数,如3.14 0.66等
b = 3.14
# - 复数 complex 也就是实数和虚数的组合,如5+3i等
c = complex(5, 3)
# - 布尔型 bool 也就是真假类型,真为True,假为False
d = True
# 2.2. 字符串
str = "一串字符串"
# 3. 列表list 有序可重复
l = list([1, 2, 3])
# 4. 字典dict 键值对,键唯一
dic = dict({'a': 1, 'b': 2})
# 5. 元祖tuple 元素不可变
tup = (1, 2, 3)
# 6. 集合set 无序不重复
s = set("set_content")print(type(a))
print(type(tup))
print(type(s))
"""
<class 'int'>
<class 'tuple'>
<class 'set'>
"""print(a/b)
print(a//b)
"""
3.184713375796178
3.0
"""name = "zhangsan"
age = 20res = f"{name} is {age} years old"print("你叫什么名字?")
name = input()
# 也可以两行并一行为:name = input("你叫什么名字?")
print(f"你好,{name}!")
2.2 数据容器
可以存储若干数据的容器,存储数据的类型可以不唯一
2.2.1 列表list
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型
2.2.1.1 创建列表
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
2.2.1.2 访问列表数据
使用下标索引来访问列表中的值,或者使用下标索引来访问列表中的值
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7 ]print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
# list1[0]: physics
# list2[1:5]: [2, 3, 4, 5]# 加入元素
list2.append("abc") # 尾加
同样,更新元素就是访问到元素后,重新赋值:list[0] = 666
2.2.1.3 删除元素
可以使用 del 列表[下标] 的方式
或者 列表.remove(元素) 的方式
一次只能删一个元素
2.2.1.4 列表的截取
>>>L = ['Google', 'Runoob', 'Taobao']
>>> L[2]
'Taobao'
>>> L[-2]
'Runoob'
>>> L[1:]
['Runoob', 'Taobao']
>>>
如果是从第一个元素向后选取,则第一个元素下标为0,最后一个元素下标为列表长度-1
如果是从最后一个元素向前来看,则最后一个元素下标为-1,第一个元素下标为-列表长度,需要注意的是也是从左向右选取
names = ["a", 2, "bb", "c"] # 下标分别为 0 1 2 3 或者是 -4 -3 -2 -1
print(names[0:2]) # ['a', 2]
print(names[-4:-2]) # ['a', 2]# 或者,规定逆向
print(names[-2:-4:-1]) # ['bb', 2]
2.2.1.5 列表的遍历
list = ['html', 'js', 'css', 'python']# 1
for i in list:print(list.index(i), i)# 2
for i in range(len(list)):print(i, list[i])# 3
for i, val in enumerate(list):print(i, val)# 4
i = 0
while i < len(list):print(i, list[i])i += 1
2.2.2 字符串str
字符串是 Python 中最常用的数据类型
可以使用引号 ( ’ 或 " ) 来创建字符串
2.2.2.1 创建字符串
为变量分配一个值即可
s = "abc"
text = "Hello Wolrd!"
2.2.2.2 访问字符串的值
使用下标的方式访问
text[0]是H,text[-1]是!
也可以通过下标来切割字符串
text[0:5]值为Hell
2.2.2.3 字符串拼接
使用+来拼接若干段字符串
s2 = s + " " + text,s2的值为abc Hello Wolrd!
2.2.3 字典dict
使用key:value键值对的方式存储数据
2.2.3.1 创建字典
dic1 = dict()
dic2 = dict({'a':1,'b':2})
2.2.3.2 获取字典的值
使用dic2['a']或者dic2.get('a')的方式根据key来获取value的值
2.2.3.3 更新字典
根据字典的key获取到值后,重新赋值即可
dic2['a'] = 10
2.2.3.4 添加数据
使用dic[]的方式,如dic2['c'] = 3,字典中没有键为c的键值对,会自动添加一对c : 3
2.2.3.5 字典的遍历
# 1
for key,value in dic2.items():print(key,value)# 2
for i in dic2.keys():print(i,dic2[i]) # or print(i,dic2.get(i))
2.2.4 元组tuple
元组的元素不能修改
只需要在括号中添加元素,并使用逗号隔开即可创建元组
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"
可根据下标来访问数据,但元组创建后,就不可以更改其数据了
2.2.5 集合set
集合中的元素不可重复
使用花括号来创建集合
set1 = {'a', 'b', 'c', 4}
一般可用于对列表list等容器中的数据去重
相关文章:
python简单入门
python简单入门 文章目录 python简单入门0. 地址链接1. 官网2.2. 下载地址3. 官方文档 1. 第一章1.1 python解释器1.2 基础语法1.2.1 常见数据类型1.2.2 强制类型转换1.2.3 注释1.2.4 运算符1.2.5 字符串1.2.5.1 字符串的定义1.2.5.2 字符串拼接1.2.5.3 格式化字符串1.2.5.3 精…...
如何快速从csv文件搭建一个简单的神经网络模型(回归)
快速搭建一个简单的神经网络预测模型 采用的数据是kaggle的房价预测数据 涉及的数据文件,提取码为:zxcv #导入相关包 import pandas as pd import numpy as np import torch import torch.nn as nn首先读取数据 trainpd.read_csv("path",enc…...
Pytorch深度学习-----DataLoader的用法
系列文章目录 PyTorch深度学习——Anaconda和PyTorch安装 Pytorch深度学习-----数据模块Dataset类 Pytorch深度学习------TensorBoard的使用 Pytorch深度学习------Torchvision中Transforms的使用(ToTensor,Normalize,Resize ,Co…...
macOS Ventura 13.5 (22G74) Boot ISO 原版可引导镜像下载
macOS Ventura 13.5 (22G74) Boot ISO 原版可引导镜像下载 本站下载的 macOS 软件包,既可以拖拽到 Applications(应用程序)下直接安装,也可以制作启动 U 盘安装,或者在虚拟机中启动安装。另外也支持在 Windows 和 Lin…...
【机器学习】 奇异值分解 (SVD) 和主成分分析 (PCA)
一、说明 在机器学习 (ML) 中,一些最重要的线性代数概念是奇异值分解 (SVD) 和主成分分析 (PCA)。收集到所有原始数据后,我们如何发现结构?例如,通过过去 6 天…...
如何用logging记录python实验结果?
做python实验有时候需要打印很多信息在控制台(console),但是控制台的信息不方便回顾和保存,故而可以采用logging将信息存储起来。 先新建一个文件message.log代码如下: import logging logging.basicConfig(filename"messa…...
C语言假期作业 DAY 03
目录 题目 一、选择题 1、已知函数的原型是: int fun(char b[10], int *a); ,设定义: char c[10];int d; ,正确的调用语句是( ) 2、请问下列表达式哪些会被编译器禁止【多选】( ) 3、…...
使用serverless实现从oss下载文件并压缩
公司之前开发一个网盘系统, 可以上传文件, 打包压缩下载文件, 但是在处理大文件的时候, 服务器遇到了性能问题, 主要是这个项目是单机部署.......(离谱), 然后带宽只有100M, 现在用户比之前多很多, 然后所有人的压缩下载请求都给到这一台服务器了, 比如多个人下载的时候带宽问…...
从上到下打印二叉树
题目描述 从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。 例如: 给定二叉树: [3,9,20,null,null,15,7], 返回: [3,9,20,15,7] 算法思想 建立一个vector数组ret用来当做返回的结果数组,建立一个队列用来接收二叉树…...
【推荐】排序模型的调优
【推荐】排序模型的调优 排序模型的选择 排序模型常见的训练方式 样本类别不均衡处理尝试 欠拟合 过拟合 其他问题 排序模型的选择 LR,GBDT,LRGBDT,FM/FFM, 深度模型(wide & deep,DeepFM&#x…...
负载均衡安装配置详解
负载均衡(Load Balancing)是一种将网络流量分布到多个服务器上的技术,以提高系统的性能、可靠性和可扩展性。 在负载均衡中,有一个负载均衡器(Load Balancer),它充当了传入请求的前置接收器。当…...
Java-逻辑控制
目录 一、顺序结构 二、分支结构 1.if语句 2.swich语句 三、循环结构 1.while循环 2.break 3.continue 4.for循环 5.do while循环 四、输入输出 1.输出到控制台 2.从键盘输入 一、顺序结构 按照代码的书写结构一行一行执行。 System.out.println("aaa"); …...
UE 透明渲染次序
附加顺序 用最外面的球, 依次附加里面的球 最后附加的物体优先级最高 附加顺序 用最里面的球, 依次附加外面的球 这样渲染顺序就对了...
【C++】多态原理剖析,Visual Studio开发人员工具使用查看类结构cl /d1 reportSingleClassLayout
author:&Carlton tag:C topic:【C】多态原理剖析,Visual Studio开发人员工具使用查看类结构cl /d1 reportSingleClassLayout website:黑马程序员C tool:Visual Studio 2019 date:2023年7月24日 目…...
vue实现flv格式视频播放
公司项目需要实现摄像头实时视频播放,flv格式的视频。先百度使用flv.js插件实现,但是两个摄像头一个能放一个不能放,没有找到原因。(开始两个都能放,后端更改地址后不有一个不能放)但是在另一个系统上是可以…...
iptables安全技术和防火墙
防火墙:隔离功能 位置:部署在网络边缘或主机边缘,在工作中,防火墙的主要作用是决定哪些数据可以被外网访问以及哪些数据可以进入内网访问,主要在网络层工作 其他类型的安全技术:1、入侵检测系统 2、入侵…...
微信小程序开发5
一、自定义组件-插槽 1.1、什么是插槽 在自定义组件的wxml结构中,可以提供一个<slot>节点(插槽),用于承载组件使用者提供的wxml结构 1.2、单个插槽 在小程序中,默认每个自定义组件中允许使用一个<slot>进行占位,这种…...
【算法题】2681. 英雄的力量
题目: 给你一个下标从 0 开始的整数数组 nums ,它表示英雄的能力值。如果我们选出一部分英雄,这组英雄的 力量 定义为: i0 ,i1 ,… ik 表示这组英雄在数组中的下标。那么这组英雄的力量为 max(nums[i0],n…...
fastutil简单测试下性能
前言 简单测试一下fastutil的实现和Java类库实现的速率。 使用jmh进行测试。 简单解释一下,每轮测试预热2次,每次1s;实测2次,每次1秒。 进行5轮测试。数组大小3种。 package fastutil;import it.unimi.dsi.fastutil.ints.IntArr…...
【FAQ】关于无法判断和区分用户与地图交互手势类型的解决办法
一. 问题描述 当用户通过缩放手势、平移手势、倾斜手势和旋转手势与地图交互,控制地图移动改变其可见区域时,华为地图SDK没有提供直接获取用户手势类型的API。 二. 解决方案 华为地图SDK的地图相机有提供CameraPosition类&…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
linux之kylin系统nginx的安装
一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...
Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
PL0语法,分析器实现!
简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
.Net Framework 4/C# 关键字(非常用,持续更新...)
一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...
