【Python】Python基础知识总结

news2024/9/19 4:36:29

🎉欢迎来到Python专栏~Python基础知识总结


  • ☆* o(≧▽≦)o *☆~我是小夏与酒🍹
  • 博客主页:小夏与酒的博客
  • 🎈该系列文章专栏:Python学习专栏
  • 文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏
  • 📜 欢迎大家关注! ❤️
    图标

CSDN

🎉 目录-Python基础知识总结

  • 一、说明
  • 二、基础语法
    • 2.1 缩进规则
    • 2.2 函数
    • 2.3 数据类型
    • 2.4 顺序语句结构
    • 2.5 条件和分支
    • 2.6 循环

遇见未来

一、说明

Python技能树:Python入门技能树。
版本:Python 3.10。
IDE:PyCharm。

二、基础语法

2.1 缩进规则

🔸缩进对程序的影响

1、缩进不符合规则,解析器会报缩进错误,程序无法运行。
2、缩进的位置不同,程序执行的效果也可能产生差异。

🔸缩进量与缩进字符
Python可以使用空格或制表符(Tab符)标记缩进。缩进量(字符个数)不限。

A、空格和tab符通常都以空白形式显示,混用不容易区分,影响代码阅读,增加维护及调试的困难。 因此 Python PEP8 编码规范,指导使用4个空格作为缩进。
B、实际开发,代码规模较大,缩进深度的影响,会选择2个空格做为缩进,更易于阅读。

2.2 函数

🔸基本内置函数

Python语言中自带的函数叫做内建函数,这些内建函数对大部分常用操作进行有效封装,可以直接调用,为开发提供了极大便利。由于内建函数是Python语言内置的函数,因此不需要导入任何函数库即可直接调用。

内建函数:内建函数也叫内置函数,即系统已经定义好的函数,开发者可以直接调用。

参考链接:python常见的内置函数。

在Python语言中,除内建函数外的其他类型函数通常被称为第三方函数。
🔸第三方函数一般是由其它开发者或组织针对某些特定需求编写的函数库,并共享给大家使用。Python语言的强大功能,也正是得益于其丰富的第三方函数库。不管是内建函数,还是第三方函数,在Python语言中都可以非常方便的使用。
🔸要成功调用一个内建函数或第三方函数,首先需要知道的是该函数的准确名称和参数列表信息。如求绝对值的内建函数abs()有一个数值类型参数。

例如通过大族机器人官方给出的SDK来控制机械臂进行运动:

from CPS import CPSClient

# 定义运动类型
nMoveType = 0
# 定义工具坐标变量
sTcpName = "TCP"
# 定义用户坐标变量
sUcsName = "Base"
# 定义运动速度
dVelocity = 120
# 定义运动加速度
dAcc = 50
# 定义过渡半径
dRadius = 50
# 定义是否使用关节角度
nIsUseJoint = 1
# 定义是否使用检测 DI 停止
nIsSeek = 0
# 定义检测的 DI 索引
nIOBit = 0
# 定义检测的 DI 状态
nIOState = 0
# 定义路点 ID
nstdCmdID = "0"

if __name__ == '__main__':
    #声明对象
    cps = CPSClient()
    #创建连接
    cps.HRIF_Connect(0, '192.168.0.10', 10003)
    #读取当前状态机
    result = []
    cps.HRIF_ReadCurFSM(0,0,result)
    #如果当前为去使能状态则上使能
    if result[0] == '24':
        cps.HRIF_GrpEnable(0,0)
    #等待上使能完成
    while 1:
        #上使能需要时间,持续判断状态机,直到达到机器人就绪状态为止
        cps.HRIF_ReadCurFSM(0,0,result)
        print(result)
        if result[0] == '33':
            break
    #循环执行[0,0,90,0,90,0]与[90,0,90,0,90,0]两点间的运动
    while 1:
        # 坐标点对应关节顺序为从下到上
        #复位程序
        cps.HRIF_WayPoint(0, 0, nMoveType, [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], sTcpName, sUcsName, dVelocity,dAcc, dRadius, nIsUseJoint, nIsSeek, nIOBit, nIOState, nstdCmdID)
        # 等待运动完成
        cps.waitMovementDone(0, 0, [0, 0])
        
        cps.HRIF_WayPoint(0, 0, nMoveType, [0, 0, 0, 0, 0, 0], [40, 35, 40, 65, 50, 0], sTcpName, sUcsName, dVelocity, dAcc, dRadius, nIsUseJoint, nIsSeek, nIOBit, nIOState, nstdCmdID)
        #等待运动完成
        cps.waitMovementDone(0, 0, [0, 0])
        
        cps.HRIF_WayPoint(0, 0, nMoveType, [0, 0, 0, 0, 0, 0], [90, 0, 90, 0, 90, 0], sTcpName, sUcsName, dVelocity,dAcc, dRadius, nIsUseJoint, nIsSeek, nIOBit, nIOState, nstdCmdID)
        #等待运动完成
        cps.waitMovementDone(0, 0, [0, 0])
        
        cps.HRIF_WayPoint(0, 0, nMoveType, [0, 0, 0, 0, 0, 0], [-90, 0, 90, 0, 90, 0], sTcpName, sUcsName, dVelocity,dAcc, dRadius, nIsUseJoint, nIsSeek, nIOBit, nIOState, nstdCmdID)
        #等待运动完成
        cps.waitMovementDone(0, 0, [0, 0])

效果展示见如下视频:

Python_SDK 控制大族机器人机械臂

🔸定义函数需要符合的规则

简单函数的定义:

def print_Hi(str):
    print("Hi,",str)

print_Hi("Python")

输出结果:

Hi, Python

📜通常情况下,在Python语言中定义一个具有特定功能的函数需要符合以下规则:

  • 函数代码块以def关键字开头,后接函数标识符名称和形参列表;
  • 任何传入的参数和自变量必须放在圆括号内;
  • 函数的第一行语句可以选择性地使用文档字符串(即函数说明);
  • 函数内容以冒号起始,并且严格统一缩进;
  • 函数都有返回值,默认返回None。

关于形参和实参:
在编程语言中,函数定义时用的是形参,调用时用的是实参。
🔸形参(parameter),全称为"形式参数",不是实际存在的变量,又称虚拟变量。形参是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数
🔸实参(argument),全称为"实际参数",是在调用时传递给函数的参数。实参可以是常量、变量、表达式、函数等。无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。
🔸形参和实参的功能是数据传送。
在调用函数时,实参将赋值给形参。必须注意实参的个数、类型应与形参要一一对应,并且实参必须要有确定的值。形参的作用域一般仅限函数体内部,而实参的作用域根据实际设置而定

🔸函数的返回值

  • 函数的返回值是函数执行完成后,系统根据函数的具体定义返回给外部调用者的值。

  • 在实际开发中,有时不仅仅要执行某个函数的功能,而且还需要把该函数的执行结果作为其他函数或功能的计算单元。所以,函数返回值是非常有用的。

  • 在Python语言中,当函数运行到return语句时即执行完毕,同时将结果返回。因此,可以在函数内部通过条件判断和循环设置实现较复杂的逻辑,并返回预期的结果。如果没有return语句,函数体内所有语句执行完毕后默认返回None。

例如:

def Adder(a,b):
    return a + b

def Suber(a,b):
    c = abs(a - b)

result = Suber(1,2)

print(Adder(1,4))
print(result)

输出结果:

5
None

关于函数的参数、高阶函数和匿名函数会在后续的文章中讲解。

2.3 数据类型

和其他编程语言相比,Python语言中的变量不需要显示数据类型的声明,Python的变量类型是根据变量的赋值内容而自动生成的。

Python 六大数据类型:
🔸数字: 包含int(整型)、long(长整型,但python3中已经没有了,python3中只有int)、complex(复数)、float(浮点型)、bool(布尔型)。
🔸字符串(String): 比如:“hello world”,“python”。
🔸列表(List): 比如:[1,2,3,4],[’a‘,‘b’,‘c’,‘d’]。
🔸字典(Dictionary):例如:{“name”:“poge”,“age”:30}。
🔸元组(Tuple): 例如:(1,‘hello’,3)。
🔸集合(Set):例如:{’a‘,’b‘,’c‘,’d‘}。

2.4 顺序语句结构

顺序结构是最简单也是最常见的一种结构,采用顺序结构的程序通常按照由前到后的顺序执行各个语句,直到程序结束,结构如下所示:

开始
代码段1
代码段2
代码段3
顺序结构

2.5 条件和分支

🔸单分支选择结构:

if 判断条件:
	代码段
  • 若if语句中的判断条件成立,执行if语句后的代码段;
  • 若判断条件不成立,则跳过if语句后的代码段。
  • 单分支结构中的代码段只有“执行”与“跳过”两种情况

🔸双分支选择结构:

if 判断条件:
	代码段1
else:
	代码段2
  • 若if语句中的判断条件成立,执行代码段1
  • 若判断条件不成立,则执行代码段2

🔸多分支选择结构:

if 判断条件1:
	代码段1
elif 判断条件2:
	代码段2
......
elif 判断条件n:
	代码段n
else:
	代码段n+1

🔸选择结构的嵌套:

if 判断条件1:
	代码段1
	if 判断条件2:
		代码段2
else:
	代码段3
	if 判断条件3:
		代码段4
	else:
		代码段5
	

2.6 循环

🔸while循环:

while 循环条件:
	代码段
  • 若循环条件为True,则循环执行while循环中的代码段;
  • 若循环条件为False,终止while循环。
  • 若while循环的条件总是True,这种情况叫做死循环 。

🔸for循环:

for 循环变量 in 目标
	代码段
  • 目标可以是字符串、文件、range()函数或组合数据类型等;
  • 循环变量用于保存本次循环中访问到的遍历结构中的元素;
  • for循环的循环次数取决于遍历的目标元素个数。
#遍历字符串中的每个字符
string = input("请输入一个字符串:")
for c in string:
	print(c)
#计算1+2+3+...+9+10的和
sum = 0
for x in range(11):
	sum = sum + x
print(sum)
#输出结果:55

🔸循环控制语句:
在循环语句中,有时候需要达到中断循环,或者跳过本次循环,执行下次循环的情况,因此就需要有循环控制语句。

python中使用break、continue语句控制循环的执行过程。
✨break语句:
break用于跳出整个循环。

while 循环条件:
	代码段1
	if 判断条件:
		break
	代码段2
for 循环变量 in 目标:
	代码段1
	if 判断条件:
		break
	代码段2

✨continue语句:
continue用于跳出本次循环,继续执行下次循环。

while 循环条件:
	代码段1
	if 判断条件:
		continue
	代码段2
for 循环变量 in 目标:
	代码段1
	if 判断条件:
		continue
	代码段2

✨pass语句:
pass的意思是过,pass掉就是淘汰掉的意思。
在python中,pass的意思是空语句,pass语句不做任何事情,只是为了保持程序结构的完整性。

关于循环语句的讲解,详细参考:Python基础-循环语句(while循环与for循环)。

csdn

🧸结尾


  • ❤️ 感谢您的支持和鼓励! 😊🙏
  • 📜您可能感兴趣的内容:
  • 【FPGA零基础学习之旅#9】状态机基础知识
  • 【FPGA零基础学习之旅#8】阻塞赋值与非阻塞赋值讲解
  • 【Arduino TinyGo】【最新】使用Go语言编写Arduino-环境搭建和点亮LED灯
  • 【全网首发开源教程】【Labview机器人仿真与控制】Labview与Solidworks多路支配关系-四足爬行机器人仿真与控制
    遇见未来

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

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

相关文章

5. 学成在线案例

1.典型的企业级网站 2.目的:整体感知企业级网站布局流程,复习以前的知识 5.1 准备素材和工具 1.学成在线PSD源文件 2.开发工具 PS(切图) / cutterman插件 vscode(代码) chrome(测试) 5.2 案例准备工作 采取结构与样式相分离思想: 1.创…

【备战秋招】每日一题:2022.11.3-华为机试-去除多余空格

为了更好的阅读体检,可以查看我的算法学习网 在线评测链接:P1058 题目描述 塔子哥最近接到导师的一个任务,需要他帮忙去除文本多余空格,但不去除配对单引号之间的多余空格。给出关键词的起始和结束下标,去除多余空格后刷新关键词…

豆瓣T250电影

爬取电影名字、年份、评分、评价人数 import requests import re import csv"""1、拿到页面源代码"""headers {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.…

IntelliJ IDEA安装Mybatis 插件Free Mybatis plugin

需求描述 在开发一些Mybatis的项目,经常需要写一个Mapper接口,在找代码过程,经常需要去找对应的xml文件,所以非常的不方便。自从有了免费的free-mybatis-plugin插件之后 ,在可以实现在idea里一键跳转到对应的xml文件&…

CRC16_Verilog

CRC校验 CRC即循环冗余校验码(Cyclic Redundancy Check):是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。循环冗余检查(CRC)是一种数据传输检错功能,…

Mac系统远程连接Windows11

一、远程桌面连接Windows11 1、下载并安装Microsoft Remote Desktop for mac。(Microsoft Remote Desktop for mac简介,下载链接) 2、Windows11开启远程桌面。 3、为当前Windows11账号设置密码。 二、ssh连接Windows11 1、下载并安装OpenSS…

numpy与python版本不匹配-ImportError: Unable to import required dependencies: numpy

问题 你在运行python代码的时候,是否遇到过下面这种错误 ImportError: Unable to import required dependencies: numpy: IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!Importing the numpy C-extensions failed. This error can happen f…

【优选算法题练习】day2

文章目录 一、11. 盛最多水的容器1.题目简介2.解题思路3.代码4.运行结果 二、611. 有效三角形的个数1.题目简介2.解题思路3.代码4.运行结果 三、剑指 Offer 57. 和为s的两个数字1.题目简介2.解题思路3.代码4.运行结果 总结 一、11. 盛最多水的容器 1.题目简介 11. 盛最多水的…

笔试刷过的题---选择

1.若使求解TSP算法,则时间复杂度是() 2.用1*3的瓷砖密铺3*20的地板有()种方式 答:1278 3.可以用于路径规划的算法 有多种算法可以用于路径规划,以下是一些常见的算法: Dijkstra算…

在电脑上,一秒钟快速复制汇总上百成千个文件(夹》到指定文件夹中

在日常生活和工作中,我们经常需要对大量的文件进行重命名,以方便整理和管理。使用高效的文件批量改名软件可以极大地提高我们的工作效率。本文将介绍一款功能强大的文件批量改名软件,并演示如何使用它来实现快速的文件重命名。 该软件的名称…

Spring异常处理器

文章目录 1. 异常分析2. 异常处理器2.1 异常处理器核心2.2 异常处理顺序 3. 自定义异常 1. 异常分析 问题:   程序允许不免的在各层都可能会产生异常,我们该如何处理这些异常? 如果只是在方法里面单独使用 try… catch… 语句去一个一个的进行捕捉处理的话&#x…

【JUC并发编程】读写锁:ReadWriteLock

一、介绍 二、代码演示 1. 不使用读写锁 package readwritelock;import java.util.HashMap; import java.util.Map;/*** author swaggyhang* create 2023-07-09 11:16*/ public class Test01 {public static void main(String[] args) {MyCache myCache new MyCache();for (…

功夫这个词,西方语言中没有

功夫这个词,西方语言中没有 功夫一种意思是武侠片的武功之意 另一种意思就是【下功夫】 趣讲大白话:只要功夫深,铁棒磨成针 【趣讲信息科技220期】 #非著名IT人安志强的趣味笔记# **************************** 西方词语怎么翻译功夫的&#…

EtherNet/IP转CAN网关can协议分为几种

生产管理设备中,会有设备与其他设备的协议不同,数据无法互通,让你的工作陷入困境。这时,一款神奇的产品出现了——远创智控YC-EIP-CAN通讯网关! 1, 这款通讯网关采用ETHERNET/IP从站功能,可以将各种CAN总…

什么事RPC并实现一个简单的RPC

1. 基本的RPC模型 主要介绍RPC是什么,基本的RPC代码,RPC与REST的区别,gRPC的使用 1.1 基本概念 RPC(Remote Procedure Call)远程过程调用,简单的理解是一个节点请求另一个节点提供的服务本地过程调用&am…

管理类联考——逻辑——技巧篇——数字编码——公式

🏠个人主页:fo安方的博客✨ 💂个人简历:大家好,我是fo安方,考取过HCIE Cloud Computing、CCIE Security、CISP、RHCE、CCNP RS、PEST 3等证书。🐳 💕兴趣爱好:b站天天刷&…

特斯拉12V低压系统存在问题:刹车失灵还能怪司机吗?

特斯拉汽车失控加速事件引发全球关注,美国NHTSA(交通运输安全委员会)和特斯拉之前将责任归咎于司机误操作。但一位研究人员提出新解释,并指出特斯拉的12V低压系统可能存在问题,特别是在高负载状态下。 此研究认为&…

git上传文件到Gitee报错“error: failed to push some refs to https://gitee.com/xxxx”

文章目录 前言一、创建项目仓库二、创建工作区三、配置 LFS四、上传镜像文件 前言 我要将一个 4.27 GB 的文件上传到 Gitee 上,但是出现了下面这样的报错 error: failed to push some refs to https://gitee.com/xxxx/centos.git 因此记录一下解决报错的方法。 一、…

基于粤嵌gec6818开发板嵌入式开发电子相册,音乐播放,视频播放,2048游戏

一、功能与要求 实现功能:本系统需要使用粤嵌的GEC-6818开发板设计一款娱乐影音系统,其中包括图片显示(相册)、音乐播放、视频播放,游戏四个部分,在每个部分内部,具有操控各个部分的功能触摸按…

UNIAPP调用讯飞语音评测API

1、历经千辛万苦,UNIAPP调用评测API终于完成,在此做下总结下:首先看效果! 2、实现第1步,首先是鉴权,用到的CryptoJS等工具都可以从讯飞和uniapp官方获取 import * as base64 from "base-64" impo…