python基础知识总结(第一节)

一、python简介:

Python是一种解释型,面向对象的高级语言。

Pyhton的语法和动态类型,以及解释性语言的本质,使它一跃成为多数平台上写脚本和快速开发应用的编程语言。

python语言百度百科介绍

二、Python基础语法:

1、注释

单行注释:以#开头,#右边的所有文字以及字符,都已经变成注释说明,注释并不是要执行的程序,而是起辅助作用解释说明代码!

注意:#和注释的内容之间一般以一个空格隔开;

多行注释:多行注释是以一对三引号""" """

2、字面量

        在Python中,字面量是指在代码中直接显示的值,不需要通过变量或者其他方式间接获取。Python中的字面量可以是以下几种类型:

整数(Integer)

例如,1-12023

浮点数(Float)

例如,3.14-0.01

字符串(String)

例如,'Hello, World!'"Python"

布尔值(Boolean)

例如,TrueFalse

空值(None)

例如,None

列表(List)

例如,[1, 2, 3]['a', 'b', 'c']

元组(Tuple)

例如,(1, 2, 3)('a', 'b', 'c')

字典(Dictionary)

例如,{'name': 'Alice', 'age': 25}

集合(Set)

例如,{1, 2, 3}{'a', 'b', 'c'}

注意:在python中,可以使用type()将数据类型转换为不同的格式。

3、数据类型转换

        将字符串转换为整数num = int("123")  # num = 123

        将字符串转换为浮点数:

num = float("123.45")  # num = 123.45

        将整数或浮点数转换为字符串:

str_num = str(123)  # str_num = "123"

        将字符串转换为列表,假设字符串以特定分隔符分隔:

lst = "1,2,3".split(",")  # lst = ["1", "2", "3"]

        将列表转换为字符串,并用特定分隔符连接:

str_lst = ",".join(["1", "2", "3"])  # str_lst = "1,2,3"

        将字符串转换为字典,假设字符串是有效的JSON格式:

import json
dict_obj = json.loads('{"name": "John", "age": 30}')  

# dict_obj = {"name": "John", "age": 30}

        将字典转换为字符串,假设要转换为有效的JSON格式:

import json
dict_obj = json.loads('{"name": "John", "age": 30}')  

# dict_obj = {"name": "John", "age": 30}

注意:

  1. 浮点数转化整数,会丢失精度,会自动丢弃小数点后的数字,如果再次将整数转化成浮点数,其精度不会还原,只在数字后加小数点在加0 
  2. 任何类型都可以转化成字符串
  3. 不是任何字符串都可以转化成整数

4、标识符

        python标识符有变量标识符、函数标识符、类标识符、模块标识符、下划线开头的标识符、双下划线开头、双下划线结尾的标识符、整型标识符、浮点型标识符、字符串型标识符、列表型标识符、元组型标识符和字典型标识符。详细介绍:1、变量标识符,用于标识变量的名称,通常遵循下划线命名法;2、函数标识符,用于标识函数的名称,通常遵循下划线命名法;3、类标识符等等。

1、标识符的组成规则:

  • 标识符可以由字母(包括大小写字母)、数字和下划线组成。

  • 标识符的第一个字符必须是字母(包括大小写字母)或下划线(_)。

  • 标识符不能以数字开头,但可以包含数字。

  • 标识符对大小写敏感,即大小写字母是不同的标识符。

  • 标识符不能是 Python 的关键字(保留字)或内置函数的名称。

2、通用标识符规范:

  • 变量标识符:用于标识变量的名称,通常遵循下划线命名法(snake_case),例如 "first_name"、"user_age"。

  • 函数标识符:用于标识函数的名称,通常遵循下划线命名法(snake_case),例如 "calculate_average"、"print_message"。

  • 类标识符:用于标识类的名称,通常遵循大驼峰命名法(CamelCase),即单词首字母大写,例如 "CarModel"、"PersonInfo"。

  • 模块标识符:用于标识模块的名称,通常使用全小写字母,如 "math"、"random"。

3、Python中的特殊标识符:

  • 下划线开头的标识符:以单个下划线开头的标识符通常表示私有的属性或方法,例如 "_hidden_variable"、"_private_method"。

  • 双下划线开头、双下划线结尾的标识符:以双下划线开头和结尾的标识符为内建的标识符,如 "init"、"len"。这种命名约定用于避免与用户自定义的标识符冲突。

4、类型标识符:

  • 整型标识符:用来表示整数值,如 "num1"、"count".

  • 浮点型标识符:用来表示浮点数值,如 "price"、"average".

  • 字符串型标识符:用来表示字符串值,如 "name"、"message".

  • 列表型标识符:用来表示列表对象,如 "data_list"、"result_list".

  • 元组型标识符:用来表示元组对象,如 "info_tuple"、"data_tuple".

  • 字典型标识符:用来表示字典对象,如 "user_info"、"config_dict".

注意:python语言标识符命名规则都是不允许数字出现在开头的

5、运算符

算数(数学)运算符

运算符描述实例
+俩个对象相加a+b输出结果是30
-得到负数或是一个数减去另一个数 a - b 输出结果 -10
*两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/b / a 输出结果 2
// 取整数返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
%取余返回除法的余数 b % a 输出结果 0
**指数a**b 为10的20次方, 输出结果 100000000000000000000

 赋值运算符

运算符描述实例
=        赋值运算符把=号右边的结果赋给左边的变量,如num=1+2*3,结果num的值为7

复合赋值运算符

运算符

描述

实例
+=加法赋值运算符c += a 等效于 c = c + a
-=减法赋值运算符c -= a 等效于 c = c - a
*=乘法赋值运算符c *= a 等效于 c = c * a
/=除法赋值运算符        c /= a 等效于 c = c / a
%=取模赋值运算符c %= a 等效于 c = c % a
**=幂赋值运算符c **= a 等效于 c = c ** a
//=取整除赋值运算符

c //= a 等效于 c = c // a

比较运算符

在python中,可以表示真假的数据类型是:

布尔类型,字面量True表示真,字面量False表示假              

注:True和False中的首字母必须大写

~除了可以定义的布尔类型外,还可以通过<比较运算符>计算得到布尔类型

运算符描述
==判断是否相等
!=判断是否不等
>判断是否大于
<判断是否小于
>=判断是否大于等于
<=判断是否小于等于

~在python中,可以表示真假的数据类型是:
布尔类型,字面量True表示真,字面量Flase表示假
~除了可以定义布尔类型外,还可以通过比较计算的到布尔类型

6、字符串

字符串的三种定义方式

单引号定义法: 双引号定义法: 三引号定义法:

注意:

  1. 字符串的引号嵌套
  2. 单引号可以包含双引号
  3. 双引号可以包含单引号
  4. 也可以使用转移字符(\)来将引号接触效用,变为普通字符串
  5. 如果不用变量去接受这个三引号定义法的定义的话,那他就是个用三引号标记的注释

字符串拼接

注意:字符串无法和非字符串变量进行拼接

默认print语句输出内容会自动换行,在print语句中,加上 end=‘’ 即可输出不换行了

字符串格式化

  • 可以通过如下语法,完成字符串和变量的快速拼接
格式符号转化
%s将内容转换成字符串,放入占位位置
%d将内容转换成整数,放入占位位置
%f将内容转换成浮点型,放入占位位置

格式化精度控制

我们可以使用辅助符号"m.n"来控制数据的宽度和精度

m,控制宽度,要求是数字,如果设置的宽度小于数字自身,则不生效

.n,控制小数点精度,要求是数字,会进行小数的四舍五入

示例: %5d:表示将整数的宽度控制在5位,如数字11,就会变成:[空格][空格][空格]11,用三个空格补足宽度。

%5.2f:表示将宽度控制为5,将小数点精度设置为2 。小数点和小数部分也算入宽度计算。如,对11.345设置了%7.2f 后,结果是:[空格][空格]11.35。2个空格补足宽度,小数部分限制2位精度后,四舍五入为 .35

%.2f:表示不限制宽度,只设置小数点精度为2,如11.345设置%.2f后,结果是11.35

字符串快速格式化

1.可以通过
f“{变量}{变量}”的方式进行快速格式化
2.这种方式:
~不用理会变量类型
~不对变量做精度控制
适合对精度没有要求的时候使用

字符串格式化-表达式的格式化:
表达式(一条具有明确执行结果的代码语句)
1.如何格式化表达式?
~f“{表达式}”
~“%s\%d\%f” %(表达式,表达式,表达式)

 7、数据输入

print语句(函数),可以完成将内容(字面量,变量等)输出到屏幕上。与之对应的input语句,用来获取键盘输入
~数据输出:print
~数据输入:input
使用上也非常简单:
~使用input()语句可以从键盘获取输入
~使用一个变量接受(存储)input语句获取的键盘输入数据即可
~可以使用:input(提示信息),用以在使用输入内容之前显示提示信息。
~要注意,无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型的

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

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

相关文章

交换机的三层交换技术

现有pc1与pc2不在同一个网段之下&#xff0c;通过交换机相连接。 进人交换机1&#xff0c;创建两个vlan 10和vlan 20 &#xff0c;进入串口2设置串口模式为access&#xff0c;并且设置默认vlan为10.进入串口3设置串口模式为access&#xff0c;并且设置默认vlan为20. 进入串口1…

操作系统真象还原:完善MBR

第3章-完善MBR 这是一个网站有所有小节的代码实现&#xff0c;同时也包含了Bochs等文件 编译器给程序中各符号&#xff08;变量名或函数名等&#xff09;分配的地址&#xff0c;就是各符号相对于文件开头的偏移量 。 section 称为节&#xff0c;在有的编译器中&#xff0c;同…

做视频号小店和达人对接的好,爆单少不了!

大家好&#xff0c;我是喷火龙。 目前&#xff0c;视频号是没有什么自然流量的&#xff0c;所以&#xff0c;想要出单、爆单的话&#xff0c;靠达人带货的方式才是最可靠的&#xff0c;靠达人带货是肯定要对接达人&#xff0c;并和达人沟通带货的。 下面给大家讲一讲应该怎么…

【Python】解决Python报错:TypeError: unsupported operand type(s) for ...

&#x1f9d1; 博主简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟&#xff0c;欢迎关注。提供嵌入式方向…

Kafka原生API使用Java代码-生产者-分区策略-默认分区策略轮询分区策略

文章目录 1、代码演示1.1、pom.xml1.2、KafkaProducerPartitioningStrategy.java1.2.1、ProducerConfig.LINGER_MS_CONFIG取 0 值得情况&#xff0c;不轮询1.2.2、ProducerConfig.LINGER_MS_CONFIG取 0 值得情况&#xff0c;轮询1.2.3、ProducerConfig.LINGER_MS_CONFIG取 1000…

前端应用开发实验:表单控件绑定

目录 实验目的相关知识点实验内容代码实现效果 实验目的 &#xff08;1&#xff09;熟练掌握应用v-model指令实现双向数据绑定的方法&#xff0c;学会使用 v-model指令绑定文本框、复选框、单选按钮、下拉菜单&#xff1b; &#xff08;2&#xff09;学会值绑定&#xff08;将…

Java枚举

引入&#xff1a; 当有一些类&#xff0c;希望它的成员的值是具体的有限的值&#xff0c;且只读不需要修改&#xff0c;不希望用户去自定义其他的值。 比如季节类&#xff0c;它的成员只能是春夏秋冬&#xff0c;不希望用户构造其他的值。 枚举enum&#xff1a; 枚举是一组的特…

SQL数据库多层嵌套 json转sql建表语句,SQL数据库里数组里对象数据怎么创建

1. uniapp sqlite 一个数组包含对象嵌套对象通过主外键方式插入数据库&#xff1a; // 假设有一个对象数组&#xff0c;对象中包含嵌套对象 const objectsArray [{parentObject: {id: 1,name: Parent 1,// 其他父对象属性},childObject: {id: 11,parentId: 1,name: Child 1 o…

字符串操作:写一个方法,实现字符串的反转,如:输入abc,输出cba

import java.util.Scanner; public class Test_A15 {public static void main(String[] args){String strA"";System.out.println("请输入一串字符串:");Scanner scannernew Scanner(System.in);strAscanner.next();Test_A15 T15new Test_A15();String re…

使用 LangFuse 意外被挂马!我是怎么恢复系统稳定的?

在使用 LangFuse 过程中,被意外挂马!通过一番折腾服务恢复正常~ 本文将详细介绍应对恶意脚本和进程的完整方案,包括识别、清理、恢复和预防步骤。 阿里云扫到的信息 被执行的 Base64 SUlaQnRTCmV4ZWMgJj4vZGV2L251bGwKSUhDa0hQbmQ9Li8uJChkYXRlfG1kNXN1bXxoZWFkIC1jMjApCl…

AI Agent智能体概述及原理

AI Agent概述 AI Agent旨在理解、分析和响应人类输入&#xff0c;像人类一样执行任务、做出决策并与环境互动。它们可以是遵循预定义规则的简单系统&#xff0c;也可以是根据经验学习和适应的复杂、自主的实体&#xff1b;可以是基于软件的实体&#xff0c;也可以是物理实体。…

行为型设计模式之模板模式

文章目录 概述原理结构图实现 小结 概述 模板方法模式(template method pattern)原始定义是&#xff1a;在操作中定义算法的框架&#xff0c;将一些步骤推迟到子类中。模板方法让子类在不改变算法结构的情况下重新定义算法的某些步骤。 模板方法中的算法可以理解为广义上的业…

【YOLOv5/v7改进系列】引入AKConv——即插即用的卷积块

一、导言 介绍了一种名为AKConv&#xff08;Alterable Kernel Convolution&#xff09;的新型卷积操作&#xff0c;旨在解决标准卷积操作存在的两个根本性问题。首先&#xff0c;标准卷积操作受限于局部窗口&#xff0c;无法捕获来自其他位置的信息&#xff0c;且其采样形状固…

Facebook隐私保护:数据安全的前沿挑战

在数字化时代&#xff0c;随着社交媒体的普及和应用&#xff0c;个人数据的隐私保护问题日益受到关注。作为全球最大的社交平台之一&#xff0c;Facebook承载了数十亿用户的社交活动和信息交流&#xff0c;但与此同时&#xff0c;也面临着来自内外部的数据安全挑战。本文将深入…

玄机平台应急响应—Linux入侵排查

1、前言 这篇文章主要说一下linux的入侵排查&#xff0c;也就是说当你的服务器已经被入侵的时候&#xff0c;该如何去排查使其恢复正常。下面是排查的步骤&#xff0c;但是实际情况往往更为复杂&#xff0c;需要进一步来分析&#xff0c;而不是无脑的按照步骤来敲就完事了。 …

【FPGA】Verilog语言从零到精通

接触fpga一段时间&#xff0c;也能写点跑点吧……试试系统地康康呢~这个需要耐心但是回报巨大的工作。正原子&&小梅哥 15_语法篇&#xff1a;Verilog高级知识点_哔哩哔哩_bilibili 1Verilog基础 Verilog程序框架&#xff1a;模块的结构 类比&#xff1a;c语言的基础…

07 FreeRTOS 事件组(event group)

1、事件组概念 1.1 基本概念 使用事件组可以等待某个事件、若干事件中的任意一个事件、若干事件中的所有事件&#xff0c;但是不能指定若干事件中的某些事件。 事件组可以简单地认为就是一个整数&#xff1a;这个整数的每一位表示一个事件&#xff1b;每一位事件的含义由程序员…

常用的优化器汇总及keras实现

1.SGD&#xff08;Stochastic Gradient Descent&#xff09; 2.RMSprop&#xff08;Root Mean Square Propagation&#xff09; 3.Adadelta 4.Adam&#xff08;Adaptive Moment Estimation&#xff09; 5.Nadam 6.代码实现 from sklearn.compose import make_column_transforme…

外企如何有效面对日益严格的跨境数据传输法律?

在当今这个数据驱动的时代&#xff0c;随着全球化步伐的加快&#xff0c;企业跨国界的数据交流已成为常态。但随之而来的&#xff0c;是各国政府对跨境数据传输日益严格的规定和监管&#xff0c;这让众多外资企业&#xff08;简称“外企”&#xff09;在享受全球市场红利的同时…

区块链技术和应用

文章目录 前言 一、区块链是什么&#xff1f; 二、区块链核心数据结构 2.1 交易 2.2 区块 三、交易 3.1 交易的生命周期 3.2 节点类型 3.3 分布式系统 3.4 节点数据库 3.5 智能合约 3.6 多个记账节点-去中心化 3.7 双花问题 3.8 共识算法 3.8.1 POW工作量证明 总结 前言 学习长…