当前位置: 首页 > news >正文

Python语法基础

python语法

TIPS:本文适合有一定编程语言基础的人快速复习python基本语法

python的IO:

  • 基础input
    • a=input():默认输入
  • 基础output
    • print():默认输出
      • 默认换行
      • 参数end=""控制字母之间的距离,可以理解为默认为换行符,修改后就不会自动换行

python字符串

  • 三种定义:'A',''A'','''A'''前两种没有任何区别,python没有字符类型,第三种可以换行输入字符
  • 字符串的索引:
    • str[start:stop:step]“范围索引”,这是python的特色
  • 字符串的格式化
    • message="%.2f+%s"%(n1,n1) 注意还有一个 % 作为分隔

python的运算符

  • 成员运算符:返回bool
    list=[1,2,3,4,5,6,8]if 7 in list:print("yes!")else:print("no!")if 7 not in list:print("yes!")else:print("no!")
  • 身份运算符 :比较数据类型,返回bool
a=20
b=20#等价于C++ typeid(a)=typeid(b)
if a is b:print("yes!")
else:print("no!")
  • Python逻辑运算符 &&-and / ||-or / !-not
if 1+1==2 and 1>2:print("yes!")
else:print("no!")
  • 除法运算符:
    • 3//2=1整除,返回整数
    • 3/2=1.5浮点数除法,返回浮点数

python循环

  • for和while循环

for i in range(10):#
while(i<10):#
  • python的for和while循环可以加else语句,在不break的情况下自动执行一次
  • 其他与C++完全一致
  • range函数

    • 生成整数序列,可用于生成列表!
    • range(stop)默认是结束范围(不包括)
    • range(start,stop,step)默认左闭右开,step是步长
  • random函数

    • import random导入random包
    • 类内静态函数
      分别有生成随机整数和随机浮点数的静态方式
      • random.random()默认生成[0,1)浮点数
      • random.randint(1,100)生成指定范围的随机整数
      • random.uniform(0.01,1e+9)生成指定范围的随机浮点数
print(random.random()*10)
print(random.randint(1,100))#分别生成指定的整数和浮点数
print(random.uniform(0.01,1e+9))
print(random.randrange(0,100,3))#在一个按步长递增的集合里随机选元素

python列表

  • 基本操作
    • 直接初始化:
    • 循环初始化:[i for i in range(10)]
    • 范围索引:[1:4:2][-1]python数组的下标可以是负数
    • list3=list1*4:倍增列表
    • list3=list1+list2:拼接列表
    • list1.append(1):添加元素
    • del list1[2]:删除元素 注意这个操作不是类内操作,而是脚本操作
    • del list:删除列表

tuple元组

  • 类似于列表,可以是n元组,但是不可以修改元素
  • 基本操作
    • tup=(a,b,c):初始化
    • del tup:删除元组
    • del tup[2]:错误的,不能够修改元素

python字典

  • key:value:基本数据类型,key必须是不可变对象
  • 基本操作:
    • len(d):长度
    • d.get(key):寻找键为key的元素,类似于C++map的map.find(key)
    • d.values():返回所有值
    • d.clear():清空元素

python的函数

  • python的函数参数类型分为可变对象和不可变对象
  • 可变对象默认是引用传递,不可变对象默认是值传递,与C++和Java最大的区别
  • python的函数参数类型推导是动态的,所以只需要定义变量即可
    • 可以在变量旁加上a:int作注释,不影响解释器
  def f(n:int):if n==0:return 1else: return n*f(n-1)
#这段代码不改变传入参数的值def h(list4):list4.append(5)return list4
#这段代码改变传入参数的值

python的模块

  • import support:导入python文件,类似C++的头文件
  • import support.xxx:导入support下具体某个方法或类
  • from numpy import xxx:导入numpy内下的特定文件
  • from numpy import *:导入numpy整个库,类似Java

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 微信小程序-组件样式隔离
  • Docker的安装及使用摘要
  • AiPPT的成功之路:PMF付费率与增长策略
  • 美股交易相关知识点 持续完善中
  • 基于SpringBoot+Vue的招生管理系统(带1w+文档)
  • VSCode使用ipynb文件高效地进行功能测试
  • ArduPilot开源飞控之AP_VisualOdom
  • STM32快速复习(八)SPI通信
  • Git管理源代码、git简介,工作区、暂存区和仓库区,git远程仓库github,创建远程仓库、配置SSH,克隆项目
  • Centos7开放端口
  • 汇聚荣拼多多电商的技巧有哪些?
  • Nordic 52832作为HID 键盘连接配对电视/投影后控制没反应问题的分析和解决
  • 给您介绍工控CAN总线
  • 网安实验大全
  • C# List、LinkedList、Dictionary性能对比
  • “Material Design”设计规范在 ComponentOne For WinForm 的全新尝试!
  • 【Leetcode】104. 二叉树的最大深度
  • 【翻译】babel对TC39装饰器草案的实现
  • CNN 在图像分割中的简史:从 R-CNN 到 Mask R-CNN
  • CSS居中完全指南——构建CSS居中决策树
  • eclipse(luna)创建web工程
  • eclipse的离线汉化
  • js操作时间(持续更新)
  • MQ框架的比较
  • Sublime Text 2/3 绑定Eclipse快捷键
  • SwizzleMethod 黑魔法
  • ViewService——一种保证客户端与服务端同步的方法
  • vue学习系列(二)vue-cli
  • 多线程事务回滚
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 我的zsh配置, 2019最新方案
  • elasticsearch-head插件安装
  • #HarmonyOS:Web组件的使用
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (C#)Windows Shell 外壳编程系列9 - QueryInfo 扩展提示
  • (C++哈希表01)
  • (Java入门)抽象类,接口,内部类
  • (二)构建dubbo分布式平台-平台功能导图
  • (附源码)c#+winform实现远程开机(广域网可用)
  • (附源码)ssm高校升本考试管理系统 毕业设计 201631
  • (七)Java对象在Hibernate持久化层的状态
  • (四)鸿鹄云架构一服务注册中心
  • (四)图像的%2线性拉伸
  • .MyFile@waifu.club.wis.mkp勒索病毒数据怎么处理|数据解密恢复
  • .NET 4.0中使用内存映射文件实现进程通讯
  • .NET Core 2.1路线图
  • .net core 使用js,.net core 使用javascript,在.net core项目中怎么使用javascript
  • .NET 药厂业务系统 CPU爆高分析
  • .net6使用Sejil可视化日志
  • .NET技术成长路线架构图
  • .Net面试题4
  • .NET设计模式(8):适配器模式(Adapter Pattern)
  • :“Failed to access IIS metabase”解决方法
  • @Builder用法
  • [ACL2022] Text Smoothing: 一种在文本分类任务上的数据增强方法