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 常见数据类型

  1. 数字
    • 整型 int 也就是整数,如10 -10等
    • 浮点型 float 也就是小数,如3.14 0.66等
    • 复数 complex 也就是实数和虚数的组合,如5+3i等
    • 布尔型 bool 也就是真假类型,真为True,假为False
  2. 字符串
  3. 列表list 有序可重复
  4. 字典dict 键值对,键唯一
  5. 元祖tuple 元素不可变
  6. 集合set 无序不重复

变量的定义,格式:

变量名=变量值,如count=20;l=list()dic={'a':10,'b'=666}

使用type()查看数据类型,如type(10)显示<class 'int'>

变量最好做到见名知意,也就是看到变量名能大概猜到表示什么,比如stock_price表示股票价格,而a b c x等等,用在项目中就不那么舒服了

1.2.2 强制类型转换

  1. 字符串转换为数字
    也就是说,起初类似str=“123”,但类型是字符串类型,不能与数字进行运算,需要强制转换为数字
    对于字符串转数字,要求字符串的内容都是数字,如"123""666"等,不能掺杂其他非数字类型,比如"123a""66b5"
# 转换为整型
num=int(str);
# 或者,转换为浮点型
num=float(str);
  1. 数字转换为字符串
    不希望数字参与运算,转换为字符串类型。
num=10
# 转换为字符串类型
s=str(num)

1.2.3 注释

  1. 单行注释
    #号开头 如# 单行注释
    注意# 号后有一个空格(规范)
  2. 多行注释
    使用三个 " 包围,如:
    """
    多行 
    注释
    """
    code
    
  3. 快捷键 ctrl + /
    对需要注释的代码,选中后,按下快捷键即可

1.2.4 运算符

运算符描述
+加法运算
-减法运算
*乘法运算
/除法运算(结果带小数)
//取整除(结果下取整)
%取余运算
**指数运算
=赋值运算
复合运算a=5;a+=1;,相当于a=5;a=a+1;,也就是说a+=1相当于a=a+1a*=5相当于a=a*5,以此类推

1.2.5 字符串

1.2.5.1 字符串的定义

三种方式

  1. 单引号接收,如 name=‘jack’
  2. 双引号接收(常用),name=“jack”
  3. 三引号接收,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,先转换成了字符串,后参与拼接

常用的三种占位

  1. %s 将内容转换为字符串后拼接
  2. %d 将内容转换为整型后拼接
  3. %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 = 20

res = 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 = 20

res = 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]Htext[-1]!

也可以通过下标来切割字符串
text[0:5]值为Hell

2.2.2.3 字符串拼接

使用+来拼接若干段字符串

s2 = s + " " + texts2的值为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等容器中的数据去重

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

jenkins部署Springboot项目

文章目录 jenkins部署Springboot项目步骤创建一个jenkins任务开始配置准备步骤添加shell脚本(两个)你放一个执行也行构建成功后执行脚本 如何在linux上安装jenkins可以看上一篇 linux安装jenkins(详细步骤) jenkins部署Springboot项目步骤 创建一个jenkins任务 开始配置 ![在这…

error: /tmp/ccxy1wo0.o: multiple definition of ‘tgt_flow_thread_init‘

linux 项目使用Makefile 编译代码时&#xff0c;一直报错 从报错意思上看很明确&#xff0c;就是重复定义 tgt_flow_thread_init函数 但是我从全局搜索代码看根本不存在重复定义问题。 从网上看是说可能存在头文件有重复的定义或者头文件被重复的引用&#xff0c;但是我看了…

el-table树形表格实现复选框多选效果

2023.7.26今天我学习了如何使用树形表格的时候进行复选框的多选效果。 当我们使用树形结构表格需要进行多选功能操作的时候会发现点击全选的时候&#xff0c;只有一级表格数据会被选中&#xff0c;问题如图&#xff1a; 我们需要实现的是点击全选的不管是几级表格数据都可以被…

策略模式的实现与应用:掌握灵活算法切换的技巧

文章目录 常用的设计模式有以下几种&#xff1a;一.创建型模式&#xff08;Creational Patterns&#xff09;&#xff1a;二.结构型模式&#xff08;Structural Patterns&#xff09;&#xff1a;三.行为型模式&#xff08;Behavioral Patterns&#xff09;&#xff1a;四.并发…

k8s使用helm部署Harbor镜像仓库并启用SSL

1、部署nfs存储工具 参照&#xff1a;https://zhaoll.blog.csdn.net/article/details/128155767 2、部署helm 有多种安装方式&#xff0c;根据自己的k8s版本选择合适的helm版本 参考&#xff1a;https://blog.csdn.net/qq_30614345/article/details/131669319 3、部署Harbo…

matplotlib从起点出发(4)_Tutorial_4_Lifecycle

1 一幅图像的生命周期 本教程旨在揭示使用matplotlib绘制的一幅图像的生命周期&#xff0c;包括它的开始、中间和结束。我们将从一些原始数据开始&#xff0c;最后保存自定义可视化的图形。在此过程中&#xff0c;我们尝试使用matplotlib突出一些简洁的功能和最佳实践。 2 关…

三子棋(超详解+完整码源)

三子棋 前言一&#xff0c;游戏规则二&#xff0c;所需文件三&#xff0c;创建菜单四&#xff0c;游戏核心内容实现1.棋盘初始化1.棋盘展示3.玩家下棋4.电脑下棋5.游戏胜负判断6.game&#xff08;&#xff09;函数内部具体实现 四&#xff0c;游戏运行实操 前言 C语言实现三子棋…

maven

一、为什么需要使用maven 如今我们构建一个项目需要用到很多第三方的类库 &#xff0c;例如我们在开发项目中 需要引入 这些依赖jar包 一个项目Jar包的数量之多往往让我们瞠目结舌&#xff0c;并且Jar包之间的关系非常复杂&#xff0c;一个Jar包往往又会引用其他Jar包&#x…

安全学习DAY07_其他协议抓包技术

协议抓包技术-全局-APP&小程序&PC应用 抓包工具-Wireshark&科来分析&封包 TCPDump&#xff1a; 是可以将网络中传送的数据包完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤&#xff0c;并提供and、or、not等逻辑语句来帮助你去掉无用…

stable diffusion如何确保每张图的面部一致?

可以使用roop插件&#xff0c;确定好脸部图片后&#xff0c;使用roop固定&#xff0c;然后生成的所有图片都使用同一张脸。 这款插件的功能简单粗暴&#xff1a;一键换脸。 如图所示&#xff1a; 任意上传一张脸部清晰的图片&#xff0c;点击启用。 在其他提示词不变的情况下…

赛多利斯Sartorius天平java后端对接

业务场景 要将赛多利斯天平的数据读出来解析并且显示到对应的数字框,支持一台设备连接多种精度的天平 后端实现 通过协议解析数据,然后将数据存储 详细代码就不贴了,感兴趣的可以私聊我

GPT-AI 使用的技术概览

ChatGPT 使用的技术概览 智心AI-3.5/4模型&#xff0c;联网对话&#xff0c;MJ快速绘画 从去年 OpenAI 发布 ChatGPT 以来&#xff0c;AI 的能力再次惊艳了世人。在这样的一个时间节点&#xff0c;重新去学习相关技术显得很有必要。 ChatGPT 的内容很多&#xff0c;我计划采用…

3ds Max图文教程: 创建致命的冠状病毒动画

推荐&#xff1a; NSDT场景编辑器助你快速搭建可二次开发的3D应用场景 1. 病毒建模 步骤 1 打开 3ds Max。 打开 3ds Max 步骤 2 在透视视口中创建一个半径为 50&#xff0c;线段为 20 的 GeoSphere。 创建地球 步骤 3 打开修改器列表并将置换修改器应用于地理 球。 置换…

Linux系统MySQL中用户的权限管理

本节主要学习用户权限管理的概述&#xff0c;用户权限类型&#xff0c;用户赋权&#xff0c;权限删除&#xff0c;用户删除等。 目录 一、概述 二、用户权限类型 三、用户赋权 四、权限删除 五、用户删除 一、概述 数据库用户权限管理是数据库系统中非常重要的一个方面&am…

Dockerfile 创建镜像,构建LNMP+wordpress架构

目录 一、Dockerfile 构建镜像 1.Dockerfile 构建 nginx镜像 1.1创建 nginx Dockerfile 目录 1.2编写 Dockerfile 文件 1.3构建nginx镜像 2.Dockerfile 构建 mysql 镜像 2.1创建 mysql Dockerfile 目录 2.2修改mysql配置文件 2.3编写 Dockerfile 文件 2.4构建mysql镜…

ChatGPT伦理挑战:人工智能的权利与责任

&#x1f337;&#x1f341; 博主 libin9iOak带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33…

全志F1C200S嵌入式驱动开发(触摸屏驱动)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 触摸屏一般有两种,一种是电阻触摸屏,一种是电容触摸屏。前者需要自己买一颗i2c的信号读取芯片,用的比较多的是ns2009。后者自身集成了读取芯片,用的比较多的是gt911。正好之前测…

(十三)定时任务

以下内容来自 尚硅谷&#xff0c;写这一系列的文章&#xff0c;主要是为了方便后续自己的查看&#xff0c;不用带着个PDF找来找去的&#xff0c;太麻烦&#xff01; 第 13 章 定时任务 13.1 什么是定时任务 1、InfluxDB任务是一个定时执行的FLUX脚本&#xff0c;它先查询数据…

Docker啥是数据持久化?

文章目录 数据持久化数据卷相关命令创建读写数据卷创建只读数据卷数据卷共享数据卷容器实现数据卷共享nginx实现数据卷共享nfs总结 Dockerfile持久化Dockerfile方式docker run总结 数据持久化 ​ 在容器层的 UnionFS&#xff08;联合文件系统&#xff09;中对文件/目录的任何修…

SRC | 逻辑漏洞原理及实战

前言 作者简介&#xff1a;不知名白帽&#xff0c;网络安全学习者。 博客主页&#xff1a;不知名白帽_网络安全,CTF,内网渗透-CSDN博客 网络安全交流社区&#xff1a;https://bbs.csdn.net/forums/angluoanquan 目录 逻辑漏洞基础 概述 分类 URL跳转漏洞 概述 危害 漏洞…