python 语法学习(总结类) day 3


一、数据类型
        1   整数类型  int
        2   浮点数类型  float
        3   复数类型

        二、字符串类型
        1   字符串类型
        2  字节串类型(很少用到)

        三、组合类型
        1  集合类型:一维数组的集合
        2  元组类型(序列) 
        3   列表类型(序列)
        4   字典类型 
二.数学相关函数
    1.math模块:使用math模块,需要先引入:import  math
    import math
    print(math.e) #2.718281828459045

    math模块常用方法:
    import math
    print(math.e) #2.718281828459045
    print(math.pi) #3.141592653589793

    print(math.log(8,2)) #3.0
    '第二个参数没有则默认为e'

    print(math.pow(2,3)) #8.0

    print(math.sqrt(4)) #2.0

    print(math.fabs(-1)) #1.0
    
    print(math.sin(1/2*math.pi)) #1.0

    ceil():属于math库,返回小数的天花板整数
    import math
    print(math.ceil(2.3)) #3
    
    2.其他函数(内置函数)
    print(round(2.92,1)) #2.9
    '''round是内置函数,不用加math'''
    '''round(x,n):返回浮点数x的四舍五入值,n代表舍入到小数点后的位数'''

    print(divmod(8,5)) #(1, 3)
    '''divmod是内置函数,不用加math'''
    '''divmod(x,y):返回x和y的商和余数'''


三.错误类型:
    1.SyntaxError【语法】错误
    2.NameError【变量名】错误:使用未定义的变量时触发。
    3.IndexError【索引】错误:序列中没有此索引
    4.KeyError【键】错误:映射中没有这个键
    5.FileNotFoundError【文件没找到】错误
    6.ZeroDivisionError【除数为0】错误
    7.UnboundLocalError【全局变量为申明在函数内部修改】错误
    8.AttributeError【xxx1对象没有属性叫xxx2】错误
    9.UnicodeDecodeError【文件解码】错误
    10.OSError 【操作系统】错误
    11.ValueError 【参数】错误:传入无效参数
    12.EOFError:【输入】错误:当无数据可读但尝试读取时触发,常在input()函数无输入结束时出现。
    
    详见CSDN收藏
四.序列(列表,字符串,元组,集合,字典)
    1.序列的序号即可以从左向右以0开始依次增加,也可以从右向左以 -1开始依次减少,因此通过的序号访问序列中的元素,同一个元素可以有两个序号。
    2.只有列表,字符串,元组能相加,数乘
    3.列表,字符串,元组支持索引访问(也可以用负数索引访问,即双向索引)
,集合与字典不支持索引访问(字典可以用a[键名]访问)        
        str = '123'
        a = ['a','b','c']
        b = ('q','b','v')
        c = {'5','6','7'}
        z = {1:'a',2:'b',3:'c'}
        print(str[1]) #2
        print(a[1]) #b
        print(b[1]) #b
        #print(c[1]) 不支持索引访问
        #print(z(1)) 不支持索引访问
    4.
        有序序列有:列表,字符串,元组
        无序序列有:集合,字典

        可变序列有:列表、集合,字典
        不可变序列有:字符串、元组
    5.可变对象与不可变对象
        对象可变性:在Python中,每个变量都是一个对象,每个对象都具有其创建后是否允许修改的属性,这种特性称为对象的可变性。它影响对象在传递给函数、用于表达式或存储在数据结构中时的行为
        可变对象:创建后可以改变的对象。例子包括列表、字典、集合和用户定义的对象。
        不可变对象(字典的键必须是不可变对象,集合的元素是不可变对象):一旦创建后不允许被修改的对象。例子包括整数、浮点数、字符串、元组。
    6.len()
        列表,字符串,元组,集合,字典都可以使用
    7.max(),min()
列表,字符串,元组,集合,字典都可以使用

a = [1,2,3]
b = 'Aa'
c = (1,2,3)
d = {1,2,3}
e = {1:'a',2:'b',3:'c'}
print(max(a)) #3
print(max(b)) #a
print(max(c)) #3
print(max(d)) #3
print(max(e)) #3

a = [1,2,3]
b = 'Aa'
c = (1,2,3)
d = {1,2,3}
e = {1:'a',2:'b',3:'c'}
print(min(a)) #1
print(min(b)) #A
print(min(c)) #1
print(min(d)) #1
print(min(e)) #1
    8.sum()
    除了字符串以外都可以用
a = [1,2,3]
c = (1,2,3)
d = {1,2,3}
e = {1:'a',2:'b',3:'c'}
print(sum(a)) #6
print(sum(c)) #6
print(sum(d)) #6
print(sum(e)) #6

    9.remove()
        列表可以用,其他还没试
        a = [1,2,3,3]
        a.remove(3)
        print(a)  #[1, 2, 3]
    10.in运算符
列表,字符串,元组,集合,字典都可以用
a = {1:'a',2:'b',3:'c'}
if 1 in a:
    print('y')
else:
    print('n')

    11.字符串的方法join()
列表,字符串,元组,集合,字典都可以用
print(":". join("abcde"))  #a:b:c:d:e
print(":".join(['1','2','3']))  #1:2:3
print(":".join(('1','2','3')))  #1:2:3
print(":".join({'1','2','3'}))  #3:2:1 或者 3:1:2 或者 1:2:3
print(":".join({'1':'a','2':'b'}))  #1:2

    12.find(),title()
字符串的方法find(),其他序列均没有,返回子串在原字符串第一次出现的位置
s = 'this is ok'
print(s.find('is')) #找到,返回2
print(s.find('u'))  #没找到,返回-1

字符串的方法title,其他序列均没有,将字符串首字母变为大写
a = 'abc'
print(a.title())  #Abc

    13.strip()
字符串的strip方法的作用是删除字符串首尾指定的字符,其他序列都没有
    14.'-'(减)操作
只有集合可以
a = {1,2,3}
b = {1,2,}
print(a - b)  #{3}

    15.列表的方法,append(),只有列表有,在列表末尾增加元素
a = [1,2]
a.append(3)
print(a)  #[1, 2, 3]
    字典增加新元素的方法:a[键] = 值

    16.字符串转换为列表,元组,集合,字典

#字符串转列表
a = "[1,2]"
print(type(a))
b = eval(a)
print(type(b))
print(b)
#字符串转元组
a = "([1,2], [3,4], [5,6], [7,8], (9,0))"
print(type(a))
b=eval(a)
print(type(b))
print(b)
#字符串转集合
a = "{1,2}"
print(type(a))
b = eval(a)
print(type(b))
print(b)
#字符串转字典
a = "{1: 'a', 2: 'b'}"
print(type(a))
b = eval(a)
print(type(b))
print(b)
    17.切片操作
列表,元组,字符串有切片操作,集合与字典无切片操作
a = [1,2,3]
b = "123"
c = (1,2,3)
d = {1,2,3}
e = {1:'a',2:'b',3:'c'}
print(a[:1])  #[1]
print(b[:1])  #1
print(c[:1])  #(1,)
    18.内含数据类型
    列表与元组可以包含不同的数据类型
    19.空序列的创建
a = []
b = ''
c = ()
d = set() #创建一个空集合
e = {} #创建一个空字典

print(a,b,c,d,e)
#[]  () set() {}

    20.sorted()
列表,元组,字符串,集合,字典都可以
a = [1,2,3]
b = '123'
c = (1,2,3)
d = {1,2,3}
e = {1:'a',2:'b',3:'c'}
print(sorted(a,reverse = 1)) #不加reverse默认升序,reverse = True为降序
print(sorted(b,reverse = 1))
print(sorted(c,reverse = 1))
print(sorted(d,reverse = 1))
print(sorted(e,reverse = 1))
#sorted 可以对所有可迭代的对象进行排序操作
#sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作


五.格式化输出
    1.format
    print("{:<8s}{}".format('qwe','asd')) #qwe     asd
    print("{:<8d}{}".format(23,12)) #23      12
    print("{:<8.2f}{}".format(2.532,23)) #2.53    23
    print("{:x>8.2f}".format(1.345))  #xxxx1.34
    #<左对齐
    #>右对齐
    #: 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。
    #从左往右:负(填充符)向(对齐方向)站(占几格)位(保留几位小数)
    
    2.占位符%
    name = '周杰伦'
    age = 28
    print("大家好,我是%s" % name)  #大家好,我是周杰伦
    print("大家好,我是%s,今年%d岁" % (name, age))  #大家好,我是周杰伦,今年28岁

    
六.运算符
%:取余数
**:x**y表示x的y次方
//:返回商的整数部分
七.range()与切片
for i in range(1,5,1):
    print(i)
#1
#2
#3
#4
for i in range(5,1,-1):
    print(i)
#5
#4
#3
#2
#结论:打印起点(包括起点)与终点之间的内容,终点无法打印

print(range(5))  #range(0, 5)
#结论:range()无法打印    

range(起点(0),终点,步幅(1))     包含起点,不包含终点
切片[起点(0):终点(len):步幅(1)]     包含起点,不包含终点    起点与终点本质上是索引

#只有一个数:默认为终点
for i in range(3):
    print(i)
#0
#1
#2

#2个数:默认为起点与终点
for i in range(1,3):
    print(i)
#1
#2

#两个数:默认为起点与终点
a = [1,2,3]
print(a[1:3])

#一个数
a = [1,2,3,4]
print(a[:-2]) #[1, 2]


八.continue与break(break语句只作用于语句所在层循环)
在循环中continue语句的作用是
退出循环的当前迭代
(结束本次循环)
(跳过循环体中剩余的语句并到循环末尾而强行执行下一次循环)

在循环中break语句的作用是
结束整个循环的执行
跳出当前循环

九.进制简写
box(2,8,16)

十.查询类的方法,查询模块的方法,查询关键字
1.查询类的方法
eg:查询列表的方法,dir(list)

2.查询模块的方法
eg:查询math模块
>>import math
>>dir(math)

3.查询关键字
>>help()
>>keywords
十一.常用ASCII码
A:65
a:97
26个字母
    

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

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

相关文章

PHP基础认知

PHP&#xff08;Hypertext Preprocessor&#xff0c;即“超文本预处理器”&#xff09;是一种广泛使用的开源通用脚本语言&#xff0c;特别适合用于Web开发。其基础语法涵盖了多个方面&#xff0c;包括标记与注释、数据类型、变量、运算符、控制结构等。以下是PHP基础语法的详细…

【网络安全】资产记录工具 Hacker Asset Logger 安装使用详细教程

原创文章,不得转载。 文章目录 工具介绍安装地址使用方式工具介绍 在对某一应用程序的多个页面、对多个相关联的应用程序进行渗透测试的过程中,多个请求包的参数、功能之间可能存在一定的联系。 例如,在A页面触发的请求包中,通过UID可获取CustomerID;在B页面触发的请求包…

SSE、Webworker 、webSocket、Http、Socket 服务器推送技术

Http协议 受浏览器的同源策略限制 HTTP 协议是一种无状态的、无连接&#xff08;短暂连接&#xff0c;客户端发送请求&#xff0c;服务器响应后即断开连接&#xff09;的、单向的应用层协议。 它采用了请求/响应模型。通信请求只能由客户端发起&#xff0c;服务端对请求做出应…

浅谈网络安全防守:从被动应对到主动管理的转变

浅谈网络安全防守&#xff1a;从被动应对到主动管理的转变 背景&#xff1a; 在当今的数字时代&#xff0c;网络安全已成为企业生存和发展的重要基石。然而&#xff0c;当企业的网络安全体系面临着诸如资产不清、互联网应用管理混乱、边界防火墙策略失效、长期未修复的漏洞、…

IP地址与物理地址:网络通信的基础详解

在学习网络通信时&#xff0c;理解IP地址与物理地址&#xff08;也称为硬件地址&#xff09;的区别至关重要。这篇文章将为你解答这些基本概念&#xff0c;并帮助你更好地掌握网络通信的基础。 什么是IP地址和物理地址&#xff1f; IP地址是网络层的逻辑地址&#xff0c;用于标…

leetcode算法题(反转链表)

思路1&#xff1a; 创建新的链表&#xff0c;遍历原链表&#xff0c;将原链表的节点进行头插到新链表中。 struct ListNode* reverseList(struct ListNode* head) {struct ListNode* next NULL;struct ListNode* new_head NULL;if (head NULL ||head->next NULL) // 空…

Java8 根据List实体中一个字段去重取最大值,并且根据该字段进行排序

1、前言 某个功能要求需要对一个list对象里数据按照股票分组&#xff0c;并且取分组涨跌幅最大的&#xff0c;返回一个新的list对象&#xff0c;并且按照涨跌幅字段进行排序&#xff0c;这么一连串的要求&#xff0c;如果按照传统的写法&#xff0c;我们需要写一大坨的代码&am…

AWS云计算实战:电商平台发卡机器人开发指南

在当今数字化时代&#xff0c;电商平台的自动化运营变得尤为重要。本文将深入探讨如何利用AWS云计算平台开发一款高效的发卡机器人&#xff0c;旨在提高电商平台的自动化水平和用户体验。 关键词 AWS云计算, 电商平台, 发卡机器人 1. 引言 随着电商行业的蓬勃发展&#xff…

Python 获取今天(当天)、昨天(前一天)、前天(昨天的前一天)的开始时间、结束时间

描述&#xff1a;我这里是封装成DatetimeHelper工具类来调用 1.今天(当天)开始时间、结束时间 from datetime import datetime, timedeltaclass DatetimeHelper:# 获取今天(当天)的开始时间、结束时间(datetime类型)staticmethoddef getTodayStartEnd():# 获取当前的日期now …

编织微服务网络:在Eureka中打造分布式服务网格

编织微服务网络&#xff1a;在Eureka中打造分布式服务网格 在微服务架构的复杂网络中&#xff0c;服务间的通信和管理变得愈加复杂。服务网格&#xff08;Service Mesh&#xff09;作为一种微服务间通信的基础设施层&#xff0c;负责处理服务发现、负载均衡、故障恢复等任务。…

在 electron+vite+vue3+express 项目中使用better-sqlite3

文章目录 一、安装 electron-rebuild 和 better-sqlite3二、使用 electron-rebuild 重建 Node.js 模块三、better-sqlite3 的基本使用四、打包五、参考资料 一、安装 electron-rebuild 和 better-sqlite3 yarn add -D electron-rebuild yarn add better-sqlite3Electron 内置的…

Hive 常见问题

Hive 内部表和外部表的区别 外部表在创建时需要加关键字 external&#xff1b;创建内部表时&#xff0c;会将数据移动到数据仓库指定的路径&#xff1b;创建外部表时&#xff0c;不会移动数据&#xff0c;只会记录数据所在的路径&#xff1b;删除内部表时&#xff0c;会删除元…

解决onlyoffice无法重命名的问题

当前的问题&#xff1a; 返回的是 error&#xff1a;1&#xff0c;根据官方文档的解释&#xff0c;这个是文档的key是错误的。 参考官方文档&#xff1a;https://api.onlyoffice.com/zh/editors/command 解决思路&#xff1a;看有没有什么事件&#xff0c;能够携带文档的key…

【计算机视觉前沿研究 热点 顶会】CVPR 2024中与3D目标检测、BEV、Lidar、自动驾驶相关的论文

UniMODE&#xff1a;统一的单目 3D 目标检测 实现包括室内和室外场景的统一单目 3D 目标检测在机器人导航等应用中具有重要意义。然而&#xff0c;涉及数据的各种场景来训练模型会带来挑战&#xff0c;因为它们具有显著不同的特性&#xff0c;例如不同的几何特性和异构的域分布…

pytorch学习(一)argparse

""" 主要学习内容 1. type default help action choice dest 2. required 为True的时候必须要初始化 3. nargs课代表List 4.流程 import argparse parser argparse.ArgumentParser(descriptionTrain network) arser.add_argument() args1 parser.parse_args(&…

无人机图像目标检测

本仓库是人工智能课程的课程作业仓库&#xff0c;主要是完成无人机图像目标检测的任务&#xff0c;我们对visdrone数据集进行了处理&#xff0c;在yolo和ssd两种框架下进行了训练和测试&#xff0c;并编写demo用于实时的无人机图像目标检测。 requirements依赖&#xff1a; ss…

01- 收入数据集【Pytorch入门实战】

目录 一、机器学习基础 二、实战例子 1.数据集分析 2.实战训练 3.总结 三、参考资料 一、机器学习基础 为了解决这个问题&#xff0c;人们想到数据驱动方法&#xff0c;也就是让计算机从现有的大量的带标签图片电学习规律&#xff0c;一旦计算机学习到了其中的规律&…

LLM量化--AWQ论文阅读笔记

写在前面&#xff1a;近来大模型十分火爆&#xff0c;所以最近开启了一波对大模型推理优化论文的阅读&#xff0c;下面是自己的阅读笔记&#xff0c;里面对文章的理解并不全面&#xff0c;只将自己认为比较重要的部分摘了出来&#xff0c;详读的大家可以参看原文 原论文地址&am…

「Python」基于Gunicorn、Flask和Docker的高并发部署

目标预期 使用Gunicorn作为WSGI HTTP服务器,提供高效的Python应用服务。使用Flask作为轻量级Web应用框架,快速开发Web应用。利用Docker容器化技术,确保应用的可移植性和一致性。实现高并发处理,提高应用的响应速度和稳定性。过程 环境准备:安装Docker和Docker Compose。编…

PostgreSQL 中如何处理数据的并发插入和唯一约束的冲突解决?

&#x1f345;关注博主&#x1f397;️ 带你畅游技术世界&#xff0c;不错过每一次成长机会&#xff01;&#x1f4da;领书&#xff1a;PostgreSQL 入门到精通.pdf 文章目录 PostgreSQL 中如何处理数据的并发插入和唯一约束的冲突解决一、并发插入和唯一约束的基本概念&#xf…