Python基础语法篇(上)

Python基础语法(上)

  • 一、基知
  • 二、基本数据类型
    • (一)标准数据类型
    • (二)数据类型转换
  • 三、字符串基本操作
    • (一)字符串的索引和切片
    • (二)字符串的拼接
  • 三、运算符
  • 四、复合数据类型
    • (一)列表 [ ]
    • (二)元组 ()
    • (三)字典 { }
    • (四)运算符在复合数据类型中的运用
  • 五、条件语句和循环语句
    • (一)if条件判断
    • (二)for循环
    • (三)while循环

一、基知

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

‘False’、‘None’、‘True’、‘and’、‘as’、‘assert’、‘break’、‘class’、‘continue’、‘def’、‘del’、‘elif’、‘else’、‘except’、‘finally’、‘for’、‘from’、‘global’、‘if’、‘import’、‘in’、‘is’、‘lambda’、‘nonlocal’、‘not’、‘or’、‘pass’、‘raise’、‘return’、‘try’、‘while’、 ‘with’、‘yield’

  1. 注释
  • 单行注释以#开头
  • 多行注释可以用多个#号,或 ''' / """(三个单引号/三个双引号)
# 第一个注释'''
使用 3 个单引号分别作为注释的开头和结尾
可以一次性注释多行内容
这里面的内容全部是注释内容
'''"""
使用 3 个双引号分别作为注释的开头和结尾
可以一次性注释多行内容
这里面的内容全部是注释内容
"""
  1. 缩进
  • 使用缩进来表示代码块,不需要使用大括号 { }
  • 缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数,对比以下输出结果

在这里插入图片描述
在这里插入图片描述

  1. 保留字
  • print 默认输出是换行的,如果要实现不换行需要在变量末尾加上end=" "
  • input 用的比较少

在这里插入图片描述
在这里插入图片描述


二、基本数据类型

(一)标准数据类型

  • Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建
  • 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型
# 整形变量
counter = 100
print(type(counter))
# 浮点型变量
miles = 1000.0
print(type(miles))
# 布尔型变量
Var = True
print(type(Var))
# 字符串
a = 'a'
b = "b"
c = "run"
print(type(a))
print(type(b))
print(type(c))
# 复数
d = 1+2j
print(type(d))counter = False # 允许

在这里插入图片描述

(二)数据类型转换

有时候,我们需要对数据内置的类型进行转换,数据类型的转换,一般情况下只需要将数据类型作为函数名即可。Python 数据类型转换可以分为两种

  • 隐式类型转换-自动完成
  • 显式类型转换-需要使用类型函数来转换
a = 100
b = 100.0
ab = a + b
print("ab的数据类型",type(ab)) # 可多段内容拼接
ab = a + int(b)
print("ab的数据类型",type(ab))
ab = int(a + b)
print("ab的数据类型",type(ab))d = '0'
# 不强制类型转换,会报错
# unsupported operand type(s) for +: 'int' and 'str'
ad = a + int(d) 
print(ad)
print("str(a)=",str(a))
ad = str(a) + d # 字符串的拼接
print(ad)h = "100.5"
bh = b + float(h)

在这里插入图片描述


三、字符串基本操作

(一)字符串的索引和切片

什么是字符串?
字符串是由字符组成的序列,可以使用单引号 ' 或双引号 " 括起来。例如:name =‘Alice’

  • 字符串中的每个字符都有一个索引,可以使用索引访问特定位置的字符,索引从0开始。例如:print(name[0])将输出第一个字符A
  • 切片是指通过指定起始索引和结束索引提取子字符串。例如:print(name[1:3])将输出 ‘li’
    :从起始位置开始取,结束位置不取,最终输出的长度结束索引 - 起始索引
    在这里插入图片描述
name = "Alice"
print(name[0])
print(name[1:4])
# -1?
print(name[-1]) # 负的会从后往前输,相当于一个循环
print(name[-4:-2])

在这里插入图片描述

(二)字符串的拼接

什么是字符串?
字符串是由字符组成的序列,可以使用单引号 ' 或双引号 " 括起来。例如:name='Alice’

字符串的拼接:
使用加号可以将两个字符串拼接在一起。例如:greeting= “Hello”+ name

name = "Alice"
greeting = "Hello"
print(greeting + " " + name)print("1" + "1")
print("1" * 2)
print("Alice" * 5)str = "iloveu"
print(str[-3:-1]*2 + str[2:4])

在这里插入图片描述


三、运算符

(1)算数运算符
在这里插入图片描述

a = 2
b = 5
print("a + b =", a + b)
print("a - b =", a - b)
print("a * b =", a * b)
print("a / b =", a / b)
print("a ** b =", a ** b)
print("a // b =", a // b)
print("a % b =", a % b)

在这里插入图片描述

(2)比较运算符
在这里插入图片描述
所有比较运算符,返回1表示T rue,0表示F alse(注意首字母要大写

a = 2
b = 2.0
print("a > b :", a > b)
print("a < b :", a < b)
print("a >= b :", a >= b)
print("a <= b :", a <= b)
print("a == b :", a == b) # 即使数据类型不同,数值一样,就是一样
print("a != b :", a != b)

在这里插入图片描述
另:
在这里插入图片描述
浮点数存储的有效位数有限,小数部分只能存储一部分,在存储范围内a也是等于b的

(3)赋值运算符
在这里插入图片描述

(4)逻辑运算符
在这里插入图片描述

a = 1
b = 2
print(a == 1 and b == 3)
print(a == 1 or b == 3)
print(not b == 3)print(1 and 0)
print(1 or 0)
print(not 0)

在这里插入图片描述

(5)成员运算符
在这里插入图片描述

string = "hello alice"
char = "o a"
print(char in string)

在这里插入图片描述
练习:加法器

# a,b 得到的结果应该是字符串
a = input("请输入第一个数字")
b = input("请输入第二个数字")print("输入的两个数字之和是:", a + b)
print("输入的两个数字之和是:", int(a) + int(b))

在这里插入图片描述


四、复合数据类型

(一)列表 [ ]

列表是最常用的 Python 数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型。创建一个列表只要把 逗号 分隔的不同的数据项使用方括号括起来可
在这里插入图片描述

ist0 = [1, '2', 3.0, True, "大家好"]
print(list0)
print(list0[1])
print(list0[1:4]) #index2 - index1 = 3
list0[2] = 5.0
print(list0)

在这里插入图片描述

(二)元组 ()

Python 的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号(),列表使用方括号[ ]。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可
在这里插入图片描述

(三)字典 { }

字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值 key=>value 对冒号分割,每个对之间用逗号分割,整个字典包括在花括号中(key值必须唯一)

在这里插入图片描述

dict0 = {"第一个元素": 1, "第二个元素": '2', "第三个元素": 3.0, "第四个元素": True, "第五个元素": "大家好"}
print(dict0)
#字典中不可以通过索引序号来索引,只能通过key来索引
print(dict0["第二个元素"])  #print(dict0[1]) KeyError: 1
dict0["第三个元素"] = 5.0
print(dict0)dict0 = {"第一个元素": 1, "第二个元素": 1, "第三个元素": 3.0, "第四个元素": True, "第五个元素": "大家好"}
# 字典中如果出现重复的key,以第二次赋值为最后的赋值 --> key值必须唯一
dict0 = {"第一个元素": 1, "第一个元素": '2', "第三个元素": 3.0, "第四个元素": True, "第五个元素": "大家好"}

在这里插入图片描述

另:数组 { }(value值必须唯一)

#集合: 不允许重复的元素出现 True == 1  --> value值必须唯一
set0 = {1,2,3.0,True,"大家好"}
print(type(set0))
print(set0)

(四)运算符在复合数据类型中的运用

(1)

a = "hello"
b = "alice"
print(a + b)
a = [1,3,4,"2","alice"]
b = [100.0,"23",True]
print(a + b)
print(a * 2)
a = (1,3,4,"2","alice")
b = (100.0,"23",True)
print(a + b)
print(a * 2)
#a = {"第一个元素": 1, "第二个元素": 1, "第三个元素": 3.0, "第四个元素": True, "第五个元素": "大家好"}
#b = {"第一个元素": 1, "第二个元素": '2', "第三个元素": 3.0, "第四个元素": True, "第五个元素": "大家好"}
#print(a + b)  不允许
#print(a * 2)  不允许

在这里插入图片描述
(2)

a = [1,3,4,"2","alice"]
b = 1
print(b in a)
c = "li"
print(c in a)  # 最后执行的判断 c == "alice"
d = [4,"2"]
print(d in a) # a 中要有[4,"2"]此子列表才会返回True

在这里插入图片描述
(3)列表的快速去重
在这里插入图片描述


五、条件语句和循环语句

(一)if条件判断

在这里插入图片描述

(二)for循环

在这里插入图片描述

for i in range(5): # ==range[0,1,2,3,4]print(i)for i in ["red","blue","green","black"]:print("当前的颜色是",i)num = 0
for i in range(5):for j in range(5):num += 1print("这是第",num,"次循环",i,j,i*j)

在这里插入图片描述

(三)while循环

在这里插入图片描述

target = 99
predict = 0
# 字符串的数字可以进行不相等的比较,可以一直不相等 --> 不加int(),循环就永远不可能结束
while not int(predict) == target: # 相当于 while predict != target:predict = input("请进行一次猜测:")if int(predict) > target: # 注:input 得到的是字符!!!print("猜大了!")elif int(predict) < target:print("猜小了!")else:print("两者相等")
print("恭喜猜中!")

在这里插入图片描述


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

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

相关文章

web安全之跨站脚本攻击xss

定义: 后果 比如黑客可以通过恶意代码,拿到用户的cookie就可以去登陆了 分类 存储型 攻击者把恶意脚本存储在目标网站的数据库中(没有过滤直接保存)&#xff0c;当用户访问这个页面时&#xff0c;恶意脚本会从数据库中被读取并在用户浏览器中执行。比如在那些允许用户评论的…

Ansys Zemax|探索OS中的物理光学传播

概述 物理光学传播 (Physical Optics Propagation, POP) 分析是OpticStudio序列模式中的一个强大的分析工具&#xff0c;它可以用来分析光束的传播和光纤耦合的效率。这篇文章旨在介绍这一分析工具的功能&#xff0c;并向您展示一些具体的应用示例。本文同时为您介绍了如何使用…

有关电力电子技术的一些相关仿真和分析:⑦三相桥式电压型PWM逆变器与直接/间接法控制单相全桥结构PWM整流器(MATLAB/Siumlink仿真)

1.1 题目一要求 以三相桥式电压型PWM逆变器为对象,研究其在不同调制度下,输出电压的频谱成分变化,依据仿真波形分析其工作时序。 参数要求:三相桥式逆变电路,直流侧电压800V,调制波频率50HZ,开关频率10kHZ,阻感负载R=10Ω,L=5mH。 1.2 题目二要求 以单相全桥结构P…

高效接入电商订单API,掌握这些技巧轻松实现

受全渠道大趋势的影响&#xff0c;很多实体商家纷纷开展电商业务&#xff0c;为了提升业务管理效率&#xff0c;想要在原有管理系统的基础上通过接入电商订单API接口&#xff0c;方便将线上线下的订单进行统一管理&#xff0c;但各个电商平台的电商订单API接口那么多&#xff0…

allure_pytest:AttributeError: ‘str‘ object has no attribute ‘iter_parents‘

踩坑记录 问题描述&#xff1a; 接口自动化测试时出现报错&#xff0c;报错文件是allure_pytest库 问题分析&#xff1a; 自动化测试框架是比较成熟的代码&#xff0c;报错也不是自己写的文件&#xff0c;而是第三方库&#xff0c;首先推测是allure_pytest和某些库有版本不兼…

彩电上自带的推箱子游戏是什么编程语言开发的?

2000年左右的厦新彩电上&#xff0c;自带了推箱子、华容道游戏。界面如下&#xff1a; 在线版推箱子游戏&#xff0c;网址&#xff1a;https://www.tuixiangzi.cn/ BASIC&#xff0c;全称是Beginners All-purpose Symbolic Instruction Code&#xff0c;含义是初学者通用符号…

【IEEE出版顺利申请中】2024年第四届电子信息工程与计算机科学国际会议(EIECS 2024)

2024年第四届电子信息工程与计算机科学国际会议(EIECS 2024) 2024 4th International Conference on Electronic Information Engineering and Computer Science 中国延吉 | 2024年9月27-29日 电子信息的出现与计算机技术、通信技术和高密度存储技术的迅速发展并在各个领域里…

每日练习,不要放弃

目录 题目1.下面叙述错误的是 ( )2.java如何返回request范围内存在的对象&#xff1f;3.以下代码将打印出4.下列类定义中哪些是合法的抽象类的定义&#xff1f;&#xff08;&#xff09;5.以下代码段执行后的输出结果为6.以下代码运行输出的是总结 题目 选自牛客网 1.下面叙述…

深度学习驱动智能超材料设计与应用

在深度学习与超材料融合的背景下&#xff0c;不仅提高了设计的效率和质量&#xff0c;还为实现定制化和精准化的治疗提供了可能&#xff0c;展现了在材料科学领域的巨大潜力。深度学习可以帮助实现超材料结构参数的优化、电磁响应的预测、拓扑结构的自动设计、相位的预测及结构…

分析示例 | Simufact Additive铺粉增材制造工艺缺陷仿真分析方案

近年来&#xff0c;随着增材制造工艺的快速发展&#xff0c;仿真模拟的重要性日益凸显&#xff0c;越来越多的科研及应用单位选择在实际打印之前&#xff0c;通过仿真预测打印问题&#xff0c;从而优化打印工艺、减少物理试错次数、降低打印成本。就不同增材工艺仿真的占比而言…

netxduo http server 创建回复以及json解析

我们今天要整http的response,比如我创建的http server,我对它发送了一个POST,然后服务器解析出json里的body,再回复过去。今天会用到json的解析库cjson以及postman去发送消息。这次用nx_web_http_server.h这个库,不用之前的nx_http_server.h 本教程在最后附带app_netxduo…

大数据基础:Doris重点架构原理

文章目录 Doris重点架构原理 一、Apache Doris介绍 二、Apache Doris使用场景 三、Apache Doris架构原理 四、Apache Doris 特点 Doris重点架构原理 一、Apache Doris介绍 基于 MPP 架构的高性能、实时的分析型数据库&#xff0c;以极速易用的特点被人们所熟知&#xff…

JVM---对象是否存活及被引用的状态

1.如何判断对象是否存活 1.1 引用计数算法 概念&#xff1a;在对象头部增加一个引用计数器,每当有一个地方引用它时&#xff0c;计数器值就加一&#xff1b;当引用失效时&#xff0c;计数器值就减一&#xff1b;任何时刻计数器为零的对象就是不可能再被使用的。 优点&#xff1…

vue2迁移到vue3注意点

vue2迁移到vue3注意点 1、插槽的修改 使用 #default &#xff0c; 以及加上template 模板 2、 类型的定义&#xff0c;以及路由&#xff0c;vue相关资源&#xff08;ref, reactive,watch&#xff09;的引入等 3、类装饰器 1&#xff09;vue-class-component是vue官方库,作…

ubuntu搭建harbor私仓

1、环境准备 链接: https://pan.baidu.com/s/1q4XBWPd8WdyEn4l253mpUw 提取码: 7ekx --来自百度网盘超级会员v2的分享 准备一台Ubuntu 机器:192.168.124.165 将上面两个文件考入Ubuntu上面 2、安装harbor 安装Docker Harbor仓库以容器方式运行,需要先安装好docker,参考:…

which 命令在Linux中是一个快速查找可执行文件位置的工具

文章目录 0、概念1、which --help2、which命令解释 0、概念 which命令用于查找命令的可执行文件的路径which 命令在 Linux 中用于查找可执行命令的完整路径。当你在 shell 中输入一个命令时&#xff0c;shell 会在环境变量 $PATH 定义的目录列表中查找这个命令。which 命令可以…

socket编程(2) -- TCP通信

TCP通信 2. 使用 Socket 进行TCP通信2.1 socket相关函数介绍socket()bind()listen()accept()connect()2.2 TCP协议 C/S 模型基础通信代码 最后 2. 使用 Socket 进行TCP通信 Socket通信流程图如下&#xff1a; 这里服务器段listen是监听socket套接字的监听文件描述符。如果客户…

运维-Docker-黑马

运维-Docker-黑马 编辑时间&#xff1a;2024/7/15 来源&#xff1a;黑马程序员 docker&#xff1a;快速构建&#xff0c;运行&#xff0c;管理应用的工具 Docker安装 部署mysql 命令解读

[Cesium for Supermap] 加载3dTiles,点击获取属性

代码&#xff1a; // 设为椭球var obj [6378137.0, 6378137.0, 6356752.3142451793];Cesium.Ellipsoid.WGS84 Object.freeze(new Cesium.Ellipsoid(obj[0], obj[1], obj[2]));var viewer new Cesium.Viewer(cesiumContainer);var scene viewer.scenescene.lightSource.ambi…

彻底改变时尚:使用 GAN 实现 AI 的未来

彻底改变时尚&#xff1a;使用 GAN 实现 AI 的未来 一、介绍 想象一下&#xff0c;在这个世界里&#xff0c;时装设计师永远不会用完新想法&#xff0c;我们穿的每一件衣服都是一件艺术品。听起来很有趣&#xff0c;对吧&#xff1f;好吧&#xff0c;我们可以在通用对抗网络 &a…