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

python -【一】基础语法

python 基础语法

一. 基础数据类型

常用的 6 种数据类型

类型描述说明
数字(Numberint,float,complex(复数),bool复数:4 + 3jj 表示复数
字符串(String文本:单引号,双引号,三引号'aaa', "aaa", """aaa"""
列表(List有序的可变列表可有序记录一堆数据
元组(Tuple有序不可变列表记录不可变的数据集合
集合(Set无序,不重复集合存放无需,且不允许重复
字典(Dictionary无序 Key-value 结构通过 k-v 的形式记录

二、注释

单行注释

# 我是单行注释
print('hello world!)

多行注释

"""
我是多行注释
out 函数主要是向控制台输出 hello world 字符串
"""
def out():print('hello world!')

三、变量

变量: 变量是在程序运行时,存储计算的值或者是表示值的抽象概念

变量本身是没有类型的,但是变量存储的数据是有类型的

"""变量演示
"""money = 50
print(f'钱包剩余:{money}元')# 购买冰淇淋花费 10 元
money = money - 10
print(f'钱包剩余:{money}元')# 花费 2 元购买彩票
money -= 2
print(f'钱包剩余:{money}元')
# 购买彩票中间 300 元
money += 300
print(f'钱包剩余:{money}元')"""
钱包剩余:50元
钱包剩余:40元
钱包剩余:38元
钱包剩余:338元
"""

type函数

"""
数据类型
"""# python type() 函数的用法
str_ = "python1"
str_2 = 'python2'
int_ = 1
float_ = 1.1def func1():print('im func1...')print(f'[{str_}]的类型是:', type(str_))
print(f'[{str_2}]的类型是:', type(str_2))
print(f'[{int_}]的类型是:', type(int_))
print(f'[{float_}]的类型是:', type(float_))
print(f'[func1]的类型是:', type(func1))"""
[python1]的类型是: <class 'str'>
[python2]的类型是: <class 'str'>
[1]的类型是: <class 'int'>
[1.1]的类型是: <class 'float'>
[func1]的类型是: <class 'function'>
"""

四、数据类型的转换

数据类型: intfloatstr 三种数据类型的转换

语法解释
int(x)x 变量转换成 int 类型
float(x)x 变量转换成 float 类型
str(x)x 变量转换成 str 类型
"""
数据类型的转换:
int(x)
float(x)
str(x)
"""print('-----------------定义变量---------------------')
# 定义 int float str 变量
int_num = 1
print(f'{int_num} 的类型是:', type(int_num))
float_num = 20.23
print(f'{float_num} 的类型是:', type(float_num))
str_num = '100'
print(f'{str_num} 的类型是:', type(str_num))print('-----------------转换类型---------------------')# 将 int 转 str
int_num_str = str(int_num)
print(f'将int转str -> {int_num_str} 的类型是:', type(int_num_str))
# 将 int 转 float
float_int_num = float(int_num)
print(f'将int转float -> {float_int_num} 的类型是:', type(float_int_num))# 将 float 转 str
float_num_str = str(float_num)
print(f'将float转str -> {float_num_str} 的类型是:', type(float_num_str))
# 将 float 转 int
int_float_num = int(float_num)
print(f'将float转int -> {int_float_num} 的类型是:', type(int_float_num))# 将 str 转 int
int_str_num = int(str_num)
print(f'将str转int -> {int_str_num} 的类型是:', type(int_str_num))
# 将 str 转 float
float_str_num = int(str_num)
print(f'将str转float -> {float_str_num} 的类型是:', type(float_str_num))"""
-----------------定义变量---------------------
1 的类型是: <class 'int'>
20.23 的类型是: <class 'float'>
100 的类型是: <class 'str'>
-----------------转换类型---------------------
将int转str -> 1 的类型是: <class 'str'>
将int转float -> 1.0 的类型是: <class 'float'>
将float转str -> 20.23 的类型是: <class 'str'>
将float转int -> 20 的类型是: <class 'int'>
将str转int -> 100 的类型是: <class 'int'>
将str转float -> 100 的类型是: <class 'int'>
"""

五、 标识符

  • 内容限制(只允许使用一下的内容)

    • 英文
    • 中文 (不推荐)
    • 数字(数字不可用于开头
    • 下划线
  • 大小写敏感

    Andy = 'Andy'
    andy = 'andy'
    # 以上两个变量是能够被区分的,所有大小写是敏感的
    
  • 不可使用关键字

    FalseTrueNoneandasassertbreakclass
    continuedefdelelifelseexceptfinallyfor
    fromglobalifimportinislambdanonlocal
    notorpassraisereturntrywhilewhith
    yield
"""
正确的标识符定义
"""# 规则1:关键字定义方式
name = '张三'
_name = '张三'
name_ = '张三'
name_1 = '张三'# 规则2: 大小写敏感
Name = '李四'
print(name)
print(Name)# 规则3: 不可使用关键字,
def = '张三' # 错误

六、运算符

算数运算符

算数运算符说明
+
-
*
/
//取整除
%取余
**指数(次方)
"""
运算符演示
"""print(f'1 + 1 = {1 + 1}')
print(f'1 - 1 = {1 - 1}')
print(f'2 * 2 = {2 * 2}')
print(f'8 / 2 = {8 / 2}')    # 4.0
print(f'8 // 2 = {8 // 2}')  # 4
print(f'8 % 3 = {8 % 3}')
print(f'8 % 3 = {8 % 3}')
print(f'2 ** 3 = {2 ** 3}')  # 2^3=8"""
1 + 1 = 2
1 - 1 = 0
2 * 2 = 4
8 / 2 = 4.0
8 // 2 = 4
8 % 3 = 2
8 % 3 = 2
2 ** 3 = 8
"""

复合赋值运算符

复合赋值运算符说明
+=b += a 等效 b = b + a
-=b -= a 等效 b = b - a
*=b *= a 等效 b = b * a
/=b /= a 等效 b = b / a
//=b //= a 等效 b = b // a
%=b %= a 等效 b = b % a
**=b **= a 等效 b = b ** a
a = 10a += 2
print(f'a += 2, a = ', a)a = 10 # 重新赋值 a 为 10
a -= 2
print(f'a -= 2, a = ', a)a = 10 # 重新赋值 a 为 10
a *= 2
print(f'a *= 2, a = ', a)a = 10 # 重新赋值 a 为 10
a /= 2
print(f'a /= 2, a = ', a)a = 10 # 重新赋值 a 为 10
a //= 2
print(f'a //= 2, a = ', a)a = 10 # 重新赋值 a 为 10
a %= 3
print(f'a %= 3, a = ', a)a = 10 # 重新赋值 a 为 10
a **= 2
print(f'a **= 3, a = ', a)"""
a += 2, a =  12
a -= 2, a =  8
a *= 2, a =  20
a /= 2, a =  5.0
a //= 2, a =  5
a %= 3, a =  1
a **= 3, a =  100
"""

七、字符串

7.1 字符串的三种第一方式

# 字符串的三种定义方式
name_1 = '张三'  		# 单引号
name_2 = "张三" 		    # 双引号
name_3 = """张三"""	    # 三引号print(name_1, name_2, name_3)# 字符串本身包含特殊符号比如: '  "  \ 等
str_1 = '"我爱python"'
print(str_1)
str_2 = "'我爱python'"
print(str_2)
str_3 = "我爱\"python"
print(str_3)"""
张三 张三 张三
"我爱python"
'我爱python'
我爱"python
"""

7.2 字符串拼接

 # 字符串拼接
title = '学习 python'
str_ = title + ", 能够完成编写python代码"
print(str_)  # 学习 python, 能够完成编写python代码# 字符串不能直接和数字进行拼接
phone = 456
str_ += phone
print(str_)  # TypeError: can only concatenate str (not "int") to str

7.3 字符串格式化

# 这种方式很难受,要写很多 + 号,可以通过格式化方式完成
print('我的名字是:' + name + ",我的职业的是:" + occupation + ",我住在:" + address + ", 我的年龄是:" + age)# 方式1:格式化,在字符串前面加上 f
print(f'我的名字是:{name},我的职业的是:{occupation},我住在:{address}, 我的年龄是:{age}')# 方式2:通过 format 函数
print('我的名字是:{0},我的职业的是:{1},我住在:{2}, 我的年龄是:{3}'.format(name, occupation, address, age))# 方式3:通过 %s 占位符,使用 % 连接,多个占位符替换使用 %() 涵盖,并支持数字类型的占位
print('我的名字是:%s,我的职业的是:%s,我住在:%s, 我的年龄是:%s' % (name, occupation, address, age))
# 占位符 %s(字符) %d(数字)  %f(浮点数) -> %.2f 表示小数点后保留2位
print('我今年%d岁,工作%.2f年,住址:%s' % (25, 4.566, '北京'))"""
我的名字是:刘海柱,我的职业的是:法师,我住在:新疆乌鲁木齐, 我的年龄是:30
我的名字是:刘海柱,我的职业的是:法师,我住在:新疆乌鲁木齐, 我的年龄是:30
我的名字是:刘海柱,我的职业的是:法师,我住在:新疆乌鲁木齐, 我的年龄是:30
我的名字是:刘海柱,我的职业的是:法师,我住在:新疆乌鲁木齐, 我的年龄是:30
我今年25岁,工作4.57年,住址:北京 
"""

7.4 练习题

name = '阿里巴巴'             # 公司名字
stock_price = 19.99         # 公司股价
stock_code = '0233333'      # 公司股票代码
daily_growth_factor = 1.2   # 股票增长指数
growth_days = 7             # 增长天数# 计算经过增长天数后,股票价格达到多少
# 使用字符串格式化后输出,如果是浮点数,要求小数点精确到2位
# 实例:
"""
公司: 阿里巴巴,股票代码:0233333,当前股价:19.99  -> 本行要求使用:f{变量} 
每日增长系数是:1.2,经过 7 天后,股票价格达到:xxx  -> 本行要求使用:% 占位符
"""growth_price = stock_price * daily_growth_factor ** growth_days
line_1 = f'公司: {name},股票代码:{stock_code},当前股价:{stock_price}'
line_2 = '每日增长系数是:%.1f,经过 %d 天后,股票价格达到:%.2f' % (daily_growth_factor, growth_days, growth_price)print(line_1)
print(line_2)

7.5 OS 键盘输入

"""
读取 os 键盘输入
"""name = input("你是谁:")
print(f"你好:{name}")"""
你是谁: zhangsan
你好:zhangsan
"""

相关文章:

python -【一】基础语法

python 基础语法 一. 基础数据类型 常用的 6 种数据类型 类型描述说明数字&#xff08;Number&#xff09;int&#xff0c;float&#xff0c;complex(复数)&#xff0c;bool复数&#xff1a;4 3j&#xff0c;j 表示复数字符串&#xff08;String&#xff09;文本&#xff1…...

数据结构 | 详解二叉树——堆与堆排序

&#x1f95d;堆 堆总是一棵完全二叉树。 大堆&#xff1a;父节点总是大于子节点。 小堆&#xff1a;父节点总是小于子节点。 注意&#xff1a;1.同一个节点下的两个子节点并无要求先后顺序。 2.堆可以是无序的。 &#x1f349;堆的实现 &#x1f334;深度剖析 1.父节点和子…...

vb.net,C#强制结束进程,“优雅”的退出方式

在VB.NET中&#xff0c;Application.Exit()和Environment.Exit(0)都用于结束程序&#xff0c;但它们的使用场景和背后的逻辑略有不同。 **Application.Exit()**&#xff1a; Application.Exit()通常用于Windows Forms应用程序中。当调用Application.Exit()时&#xff0c;它会触…...

牛客热题:数据流中的中位数

&#x1f4df;作者主页&#xff1a;慢热的陕西人 &#x1f334;专栏链接&#xff1a;力扣刷题日记 &#x1f4e3;欢迎各位大佬&#x1f44d;点赞&#x1f525;关注&#x1f693;收藏&#xff0c;&#x1f349;留言 文章目录 牛客热题&#xff1a;数据流中的中位数题目链接方法一…...

JavaScript-JavaWeb

目录 什么是JavaScript? js引入方式 js基础语法 书写语法 变量 数据据类型 运算符 类型转换 流程语句 js函数 js对象 1.Array 2.String 3.JSON js事件监听 什么是JavaScript? ● JavaScript(简称:JS)是一门跨平台、面向对象的脚本语言。是用来控制网页行为的,它能…...

vue组件通讯$parent和$children获取单签组件的⽗组件和当前组件的⼦组件的例子

在 Vue 中&#xff0c;$parent 和 $children 是实例属性&#xff0c;允许你访问组件的父组件和子组件。但是&#xff0c;请注意&#xff0c;这些属性主要用于在开发过程中进行调试和临时访问&#xff0c;并不推荐在正常的组件通信中使用&#xff0c;因为它们破坏了组件的封装性…...

Util和utils

Util FieldStats 这段代码定义了一个名为FieldStats的Java类&#xff0c;位于com.cqupt.software_1.Util包中。它使用了lombok库的Data和AllArgsConstructor注解&#xff0c;这些注解帮助生成了getter、setter、toString等方法&#xff0c;以及包含所有参数的构造函数。类中有…...

拷贝构造、移动构造、拷贝赋值、移动赋值

最近在学习C的拷贝构造函数时发现一个问题&#xff1a;在函数中返回局部的类对象时&#xff0c;并没有调用拷贝构造函数。针对这个问题&#xff0c;查阅了一些资料&#xff0c;这里记录整理一下。 调用拷贝构造函数的三种情况&#xff1a; ① 用一个类去初始化另一个对象时&a…...

Python3 笔记:math模块

要使用 math 函数必须先导入math模块 语法&#xff1a;import math Python math 模块提供了许多对浮点数的数学运算函数。 math 模块下的函数&#xff0c;返回值均为浮点数&#xff0c;除非另有明确说明。 如果需要计算复数&#xff0c;需使用 cmath 模块中的同名函数。 m…...

python -【四】函数

函数 一、函数的基础 函数&#xff1a;是组织好的&#xff0c;可以重复使用的&#xff0c;用来实现特定功能的代码段 语法 def 函数名(入参): return 出参 # 定义函数 def out_hello():print(hello ~~~)# 调用/使用/执行函数 out_hello()练习题 自定义一个函数&#xff0c…...

力扣 5. 最长回文子串 python AC

动态规划 class Solution:def longestPalindrome(self, s):size len(s)maxl 1start 0dp [[False] * size for _ in range(size)]for i in range(size):dp[i][i] Truefor L in range(2, size 1):for i in range(size):j L i - 1if j > size:breakif s[i] s[j]:if L…...

【微机原理及接口技术】可编程计数器/定时器8253

【微机原理及接口技术】可编程计数器/定时器8253 文章目录 【微机原理及接口技术】可编程计数器/定时器8253前言一、8253的内部结构和引脚二、8253的工作方式三、8253的编程总结 前言 本篇文章就8253芯片展开&#xff0c;详细介绍8253的内部结构和引脚&#xff0c;8253的工作方…...

23种设计模式之一— — — —装饰模式详细介绍与讲解

装饰模式详细讲解 一、定义二、装饰模式结构核心思想模式角色模式的UML类图应用场景模式优点模式缺点 实例演示图示代码演示运行结果 一、定义 装饰模式&#xff08;别名&#xff1a;包装器&#xff09; 装饰模式&#xff08;Decorator Pattern&#xff09;是结构型的设计模式…...

2024年2月28日 星期三

2024年2月28日 星期三 农历正月十九 1. 住建部&#xff1a;各城市要做好今明两年住房发展计划&#xff0c;防止市场大起大落。 2. 政协委员赵长龙建议&#xff1a;增加元旦、端午、中秋高速免费&#xff0c;周六日半价。 3. 人民法院案例库开始对社会开放&#xff0c;与中国…...

Java中的super关键字详解

在Java编程中&#xff0c;super关键字是一个非常重要的概念&#xff0c;尤其是在继承和多态的场景中。理解super关键字的使用方法和其背后的机制&#xff0c;对于掌握面向对象编程&#xff08;OOP&#xff09;的基本概念至关重要。本篇博客将详细讲解super关键字的各种用法及其…...

消消乐游戏开发,三消游戏,消除小游戏

消消乐是一款非常受欢迎的休闲消除类游戏&#xff0c;通常也被称为“三消游戏”。这类游戏的主要目标是通过交换和匹配三个或更多相同的物品来清除它们&#xff0c;从而得分并通过关卡。以下是一些消消乐游戏的基本特点和玩法&#xff1a; 基本玩法 交换和匹配&#xff1a;玩…...

三十三、openlayers官网示例Drawing Features Style——在地图上绘制图形,并修改绘制过程中的颜色

这篇讲的是使用Draw绘制图形时根据绘制形状设置不同颜色。 根据下拉框中的值在styles对象中取对应的颜色对象&#xff0c;new Draw的时候将其设置为style参数。 const styles {Point: {"circle-radius": 5,"circle-fill-color": "red",},LineS…...

Vue——事件修饰符

文章目录 前言阻止默认事件 prevent阻止事件冒泡 stop 前言 在官方文档中对于事件修饰符有一个很好的说明&#xff0c;本篇文章主要记录验证测试的案例。 官方文档 事件修饰符 阻止默认事件 prevent 在js原生的语言中&#xff0c;可以根据标签本身的事件对象进行阻止默认事件…...

Go语言GoFly框架快速新增接口/上手写代码

拿到一个新框架大家可能无从下手&#xff0c;因为你对框架设计思路、结构不了解&#xff0c;从而产生恐惧&#xff0c;所以我们框架是通过简单可视化界面安装&#xff0c;安装后即可看到效果&#xff0c;然后点击先点点看各个功能&#xff0c;看现有的功能是怎么写的&#xff0…...

【Vue】v-else 和 v-else-if

作用&#xff1a;辅助v-if进行判断渲染 语法&#xff1a; v-else v-else-if"表达式"PS&#xff1a;需要紧接着v-if使用 示例代码&#xff1a; <body><div id"app"><p v-if"gender 1">性别&#xff1a;♂ 男</p><…...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中&#xff0c;我们已经大致实现了rpc服务端的各项功能代…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候&#xff0c;难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵&#xff0c;或者买了二手 iPhone 却被原来的 iCloud 账号锁住&#xff0c;这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

select、poll、epoll 与 Reactor 模式

在高并发网络编程领域&#xff0c;高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表&#xff0c;以及基于它们实现的 Reactor 模式&#xff0c;为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。​ 一、I…...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量&#xff0c;这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论

路径问题的革命性重构&#xff1a;基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中&#xff08;图1&#xff09;&#xff1a; mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...

Java数值运算常见陷阱与规避方法

整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...

GitHub 趋势日报 (2025年06月06日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...

深度学习之模型压缩三驾马车:模型剪枝、模型量化、知识蒸馏

一、引言 在深度学习中&#xff0c;我们训练出的神经网络往往非常庞大&#xff08;比如像 ResNet、YOLOv8、Vision Transformer&#xff09;&#xff0c;虽然精度很高&#xff0c;但“太重”了&#xff0c;运行起来很慢&#xff0c;占用内存大&#xff0c;不适合部署到手机、摄…...

鸿蒙HarmonyOS 5军旗小游戏实现指南

1. 项目概述 本军旗小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;采用DevEco Studio实现&#xff0c;包含完整的游戏逻辑和UI界面。 2. 项目结构 /src/main/java/com/example/militarychess/├── MainAbilitySlice.java // 主界面├── GameView.java // 游戏核…...