python基础(一)

2023-11-15

python基础

1. 数据类型
  • 整数
  • 浮点数
  • 字符串
  • 布尔值: True ,False 注意大小写
  • 空值 是none
  • 列表list(相当于别的语言里的数组)
  • 字典
2. 编码设置与注释

编码: # -*- coding=utf-8 -*_

注释: 使用#或者是'''"""这种表示

3. 格式式
  • 可以使用%这种格式%s用字符串替换,%d用整数替换,%f用浮点数替换,%x用十六进制整数

    >>> 'this is %s you have %d' % ('lnsmm',123)
    
  • 还用一种使用format()函数,它传入的参数会依次替换字符串里内{0},{1}{…}

    str= 'this is {0} ,{1}'.format('test',123)
    print(str)
    #匹配浮点数
    str='this is {0},{1:.1f}'.format('test',12,11) #这是显示 this is test,12.1  1f代表着小数点的位数
    
4. list 可变列表与tuple 不可变列表
4.1 list 可变列表

1.它相当于php语言里的array方法,同样可以使用下标的方法访问里面的元素

li=['a','b','c']
print(li[0])  # 输出 a
print(li[-1]) # 输出 c
  1. 可以使用len()函数计算列表的长度

    len(li) #输出 3
    
    

3.可以向列表里添加元素append(), insert()

  • append()向元素尾添加元素

    li.append('test')
    
  • insert()是可以指定索引位置添加元素,如果我想从第一个索引添加

    li.insert(0,'one')
    
  1. 可以删除元素 pop(i)方法,i是索引位置,不加索引,则删除最后一个元素

    li.pop(0
    
4.2 不可变列表 tuple 原名叫 元组,php里好好像没这么个玩意吧,你说像常量?,静态变量?都不是吧?

常量或者是静态变量,是当变量定义好后,变量使用完后并不消失,这货是一旦初始化后,就不能修改,变量的指向,这是不是不懂?,(没关系,反正我也不太懂!),一会来个例子来说明下吧,反正我理解的也就到这了

元组的定义使用()来实现,定义好后,就不可修改了,也没有什么append,insert()的啥的了,否则会报错

classlist=('name1','name2','name3')
  • 如何定义这么一个tuple元组呢?
>>> t=()  #这种方式定义
  • 如果只有一个元素呢?

    >>> t=(1)  # 这种是不行的,种括号是不行的,它与数学公式里的()产生了歧义,在python里会返回1,而不是一个元组
    >>> t=(1,)  #p 这种是可以的
    
  • 如果是这种能改变吗?

    >>> t=('a','b',[1,2,3])
    >>>t[2][0]=11   #通过这种方式可以把变成('a','b',[11,2,3])吗? 
    

    答案是肯定的,不是说定义好了之后就不能修改了吗?,这里要理解一下,值是可以改变的,但是指向是不能改变的,说的明白点就像是一个盒子一样,规定死了这个盒子只能放下三种东西,你可以替换里面的东西,但不三种东西不能少一样,就是这个意思吧?还不懂就再想想吧!

    这里可要注意哈:这个元组里的列表是可以append,insert,pop等操作的呀,可别弄混,

    也就是说 t=(‘a’,‘b’,[])或者是t=(‘a’,‘b’,[1,2,3,4,5])这个都是可以,元组里必须有三个位置就可以了

5.if判断

格式:

#这是第一个写法,别忘记了冒号:
if aget>18:
	print('你真年轻')
else:
    print('哈哈')
#另一个写法elif(else if 简写)
if age>18:
	print()
elif age>30:
	print()
else:
	print()
# 另一个写法
if x: # 只要这个x是一个非空整数,非空字符串,非空list 就可以认定是true
 	print()
 else:
 	print()

6. 循环

python 里有两种循环:

  • for … in 用于遍历 list 类型 tuple类型

格式:

list=[1,2,3]
for x in list:
	print(x)

用例:

list=range(0,101)   #快速生成0-100的数
sum=0
for x in list:
	sum +=x
print(sum)
# 输出5050
  • 还有一种循环 while循环

    格式: 只有条件不成立时,则会退出循环

    while 条件:
    
    

    例子;

    sum=0
    num=99
    while num>0:
    	sum +=num
    	num=num-2
    print(sum)
    
  • 跳出循环:

    • break: 提前退出循环
    • continue 跳出本次循环,进入到下一次循环
7.python里的dict和set

1.dict(字典) :相当于map,使用key-value存储,相当于php里的关联数组吗?但我觉得它更像json对象吧,访问速度要比list和tuple那种要快

格式

d={'name':11,'age':20,'sex':1}
d['name']  #可以访问
d['name']=22 #可以赋值,后面的值覆盖前面的值

  • 判断key值存在不存在可以使用 in语法来判断或者是通过dict提供的get()方法来测试,如果key不存在,则返回none

    name in d
    
    
    
  • 删除key,可以使用pop(key)来实现

    d.pop('name')
    
    
  • dict内部存放的顺序和key放入的顺序是没有关系的

  • 和list 相比有几个特点: 1. 查找和插入的速度极快,不会随着key的增加而变慢 2, 需要占用极大的内存,而list相反 查找会随着元素的增加而增加,占用空间小

  1. set类型,也是一组key的集合,但不存储value ,key是不可以重复的,要创建set,需要提供一个list作为list的输入集合

    s=set([1,2,3])
    # 需要注意的是,传入的参数是[1,2,3]是一个list,但是显示的是{1,2,3},只是说明这个set内部有3个元素,并不是有序的
    
    • 可以使用add(key)向set里添加元素

      s.add(4)
      
    • 可以使用remove(key)方法删除元素

    • 使用两个set可以实现交集与并集

      s1=set([1,2,3])
      s2=set([2,3,4])
      #交集
      s1 & s2  # 输出 {2,3}
      #并集
      s1 | s2  #输出{1,2,3,4}
      
      

注意事项: dict的key必须是不可变对象

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python基础(一) 的相关文章

  • 使用 Python 编辑 RTF 文件

    也许这是一个愚蠢的问题 但我不明白 所以道歉 我有一个 RTF 文档 我想更改它 例如 有一个表 我想复制一行并以面向对象的方式更改代码中第二行中的文本 我认为 pyparsing 应该是可行的方法 但我摆弄了几个小时但没有明白 我没有提供
  • Tkinter:消息小部件中锚点选项的正确值是多少?

    我一直在学习 tkinterTkinter 中的消息小部件 https python course eu tkinter message widget in tkinter php at Python 课程和教程 https python
  • 将 yerr/xerr 绘制为阴影区域而不是误差线

    在 matplotlib 中 如何将误差绘制为阴影区域而不是误差条 例如 而不是 忽略示例图中各点之间的平滑插值 这需要进行一些手动插值 或者只是获得更高分辨率的数据 您可以使用pyplot fill between https matpl
  • 尝试从网页Python和BeautifulSoup获取编码

    我试图从网页检索字符集 这会一直改变 目前我使用 beautifulSoup 来解析页面 然后从标题中提取字符集 这工作正常 直到我遇到一个网站 到目前为止 我的代码以及与其他页面一起使用的代码是 def get encoding soup
  • Python re无限执行

    我正在尝试执行这段代码 import re pattern r w w s re compiled re compile pattern results re compiled search COPRO HORIZON 2000 HOR p
  • 数据框 - 平均列

    我在 pandas 中有以下数据框 Column 1 Column 2 Column3 Column 4 2 2 2 4 1 2 2 3 我正在创建一个数据框 其中包含第 1 列和第 2 列 第 3 列和第 4 列等的平均值 ColumnA
  • 如何获取numpy.random.choice的索引? - Python

    是否可以修改 numpy random choice 函数以使其返回所选元素的索引 基本上 我想创建一个列表并随机选择元素而不进行替换 import numpy as np gt gt gt a 1 4 1 3 3 2 1 4 gt gt
  • numpy:高效执行数组的复杂重塑

    我正在将供应商提供的大型二进制数组读入 2D numpy 数组 tempfid M N load data data numpy fromfile file dirname fid dtype numpy dtype i4 convert
  • python celery -A 的无效值无法加载应用程序

    我有一个以下项目目录 azima init py main py tasks py task py from main import app app task def add x y return x y app task def mul
  • 如何在 Python 中的函数入口、内部和退出处进行日志记录

    我希望能够使用 Python 日志记录工具在我的代码中进行简单且一致的日志记录 我能够执行以下操作 我希望所有现有 未来的模块和函数都有 输入 和 完成 日志消息 我不想添加相同的代码片段来定义日志记录参数 如下所示don t want t
  • NumPy 相当于 Keras 函数 utils.to_categorical

    我有一个使用 Keras 进行机器学习的 Python 脚本 我正在构建 X 和 Y 它们分别是特征和标签 标签的构建方式如下 def main depth 10 nclass 101 skip True output True video
  • App Engine 实体到字典

    将 google app engine 实体 在 python 中 复制到字典对象的好方法是什么 我正在使用 db Expando 对象 所有属性均为扩展属性 Thanks 有一个名为foo尝试 foo dict
  • Flask 应用程序路由中的多个参数

    烧瓶怎么写app route如果我在 URL 调用中有多个参数 这是我从 AJax 调用的 URL http 0 0 0 0 8888 createcm summary VVV change Feauure 我试图写我的烧瓶app rout
  • 检索 geodjango 多边形对象的边界框

    如何在 geodjango 中获取 MultiPolygon 对象的边界框 在 API 中找不到任何内容http geodjango org docs geos html http geodjango org docs geos html
  • 将字符串中的随机字符转换为大写

    我尝试随机附加文本字符串 这样就不只是有像这样的输出 gt gt gt david 我最终会得到类似的东西 gt gt gt DaViD gt gt gt dAviD 我现在的代码是这样的 import random import stri
  • 使用 suds SOAP 库进行 HTTP 身份验证的奇怪行为

    我有一个正在运行的 python 程序 它使用 suds 通过 SOAP 获取大量数据 Web服务是通过分页功能实现的 这样我就可以抓取nnn每个 fetch 调用的行并获取下一个nnn与后续的电话 如果我使用如下代码向 HTTP 服务器进
  • 确定分割形状几何体的“左”侧和“右”侧

    我的问题是 我怎样才能确定哪一个Aside and Bside的侧面已经分割的旋转矩形几何体 http nbviewer jupyter org urls dl dropbox com s ll3mchnx0jwzjnf determine
  • 如何通过函数注释指示函数需要函数作为参数,或返回函数?

    您可以使用函数注释 http www python org dev peps pep 3107 在python 3中指示参数和返回值的类型 如下所示 def myfunction name str age int gt str return
  • 寻找完美的正方形

    我有这个Python代码 def sqrt x ans 0 if x gt 0 while ans ans lt x ans ans 1 if ans ans x print x is not a perfect square return
  • PyQt5:如何使QThread返回数据到主线程

    I am a PyQt 5 4 1 1初学者 我的Python是3 4 3 这是我尝试遵循的many https mayaposch wordpress com 2011 11 01 how to really truly use qthr

随机推荐

  • Javascript和CSS的标签属性对应表

    在写javascript中 经常要用到style对象的css属性 很多不记得 其实很好记 基本就是CSS中的 转化为javascript的驼峰写法 除了注意下float 盒子标签和属性对照 CSS语法 不区分大小写 JavaScript语法
  • 针对博客项目进行web自动化测试

    web自动化测试针对博客项目 项目功能 测试计划 功能测试 编写测试用例 使用Selenium Junit5进行Web自动化测试 创建测试套件类 博客登录页 博客列表页 主页 博客详情页 个人博客列表页 修改密码页 编辑博客页 退出驱动 屏
  • 台达plc控制伺服电机编程实例_PPT图文讲解PLC控制系统的设计及编程实例

    今天主要是关于PLC控制系统设计 分成四个方面 以图文的形式来为大伙做讲解 一 PLC控制系统设计概述 二 PLC控制系统设计 三 PLC的安装 运行与维护 四 PLC的编程实例 一 PLC控制系统设计概述 1 系统设计的原则 2 系统设计
  • chooseAddress:fail the api need to be declared in …报错解决方法

    在app js中与pages同级添加 requiredPrivateInfos getFuzzyLocation choosePoi chooseAddress 如果提示无效的json文件 在顶部工具栏 微信开发者工具 检查更新 更新到最新
  • 一致性算法(paxos、raft)

    背景 分布式 一致性模型 1 弱一致性 最终一致性 1 1 DNS 1 1 Gossip 2 强一致性 2 1 同步 2 1 paxos 2 1 raft multi paxos 2 1 ZAB multi paxos 与raft相似 心跳
  • error C2144: 语法错误:“int”的前面应有“;”

    error C2144 语法错误 int 的前面应有 C error C2144 syntax error int should be preceded by 注 我使用VS2010时 遇到的问题 解决办法 在某个 h文件里你自定义的某个类
  • 软件工程的发展历程及展望

    软件工程发展至今 催生出了许多优秀的编程语言和编程思想 本文将带领大家一起了解软件工程经历的四个阶段 汇编语言表达业务逻辑 过程化语言表达业务逻辑 面向对象和模块化思想表达业务逻辑 服务化和组件化表达业务逻辑 最后谈一谈未来可能的发展方式
  • 刷脸支付是新奇的安全的支付体验

    扫脸支付 刷脸付钱的新奇 便利 有效率和安全的支付体验 能够大大提高客户对刷脸商品的和信赖度 刷脸不仅仅在过程中时间 还将吸引消费者注意力的时间延长了5秒到8秒右左 这几秒就会有巨大的商业价值 是让顾客同商家的经营生产有效多维 充分接触的5
  • OSI/RM七层参考模型---开放式的系统互联参考模型

    一 OSI的设计目的 OSI模型的设计目的是成为一个所有销售商都能实现的开放网路模型 来克服使用众多私有网络模型所带来的困难和低效性 OSI是在一个备受尊敬的国际标准团体的参与下完成的 这个组织就是ISO 国际标准化组织 什么是OSI OS
  • 一个很好用的 vue-picker组件

    vue picker a picker componemt for vue2 0 走了一圈 github 都没有找到自己想要的移动端的 vue picker的组件 于是自己就下手 撸了一个出来 感受下效果图 demo demo 地址 htt
  • Gradle查看第三方依赖关系图

    1 使用Android Studio Terminal 配置变量 前提是 java 和 Android Sdk配置正确 java version adb 进行验证 增加 变量名 GRADLE HOME 变量值 D gradle gradle
  • 期货开户不要过度交易

    不同状态下的心态管理 若你在昨日的交易中有所斩获 那恭喜你取得了小阶段的胜利 你可以自信而放松 但却不可忘乎所以 请记得你做出正确决策时的感觉 并重复此状态在你的下一次交易中 只有在交易时集中注意力观察行情变化 勇敢果断地应对突发变化 你才
  • 【笔记】状态同步笔记

    状态同步位置和技能 适用于fps和mmorpg类游戏 客户端A的同步阀值 减少同步量 客户端A本地会存储一份对其他客户端看到的A的预测状态 当本地真实状态和预测状态偏差超过阀值时 则发起同步 同时更新客户端A本地的预测状态 玩家运动的关键点
  • QT学习笔记(六)

    第11章 容器类 Qt提供了自己的容器类 在编写Qt程序时 既可以使用Qt容器 也可以使用STL容器 连续容器 1 向量QVector
  • 计算机丢失d3dx9_41.dll,d3dx9_41.dll

    不知道怎么下载 点我 游戏介绍 d3dx9 41 dll 当运行程序或者游戏时 系统弹出错误提示 找不到 d3dx9 41 dll 或者 没有找到 d3dx9 41 dll 时 说明您系统中缺失这个dll文件或者该dll文件没有被注册 您需
  • “视频云营业厅”-阿里云 mPaaS 加速金融机构数字化转型

    视频云营业厅 发布 蚂蚁 mPaaS 加速金融机构数字化转型 移动终端时代 随着 5G 基础设施的高速发展 AI 技术的日渐成熟 相关政策的鼓励和加持 以及当前疫情大环境的催化 远程无接触的业务办理方式由创新模式快速走向通用 通过多媒体音视
  • Doris数据模型

    目录 基本概念 Aggregate 模型 示例1 导入数据聚合 示例2 保留明细数据 示例3 导入数据与已有数据聚合 Unique 模型 读时合并 与聚合模型相同的实现方式 写时合并 Duplicate 模型 聚合模型的局限性 Unique
  • 【常见错误】UART接收不到数据错误

    利用FPGA控制DAC产生波形的实验 在完成利用FPGA控制DAC的实验中 在对UART发送数据时 显示中断已经打开 但是把数据发送过去时 并没有显示中断 相当于数据知识发送出去 而没有被接收到 经过debug后 发现原来是在硬件中 viv
  • python上传Excel文件

    python上传Excel文件 方法一 直接使用requests的data files参数 方法二 使用MultipartEncoder 方法一 直接使用requests的data files参数 直接上代码吧 def import car
  • python基础(一)

    python基础 1 数据类型 整数 浮点数 字符串 布尔值 True False 注意大小写 空值 是none 列表list 相当于别的语言里的数组 字典 2 编码设置与注释 编码 coding utf 8 注释 使用 或者是 和 这种表