Python语法技术学习笔记

Python语法技术学习笔记

一、注释

注释是写给程序员看的说明文字,代码运行时会被解释器直接忽略,不会执行

1.1单行注释:#

#,后面本行全部为注释内容

python 复制代码
#print("这行不会执行")
print("hello print")#行尾也可以写注释

Pycharm快捷键:Ctrl + /,选中代码一键添加/取消单行注释。

1.2 多行注释:使用一对三引号

使用"""内容""" 或者 '''内容'''

python 复制代码
"""
多行注释
可以写很多行说明
"""

二、Debug调试

Debug就是程序调试的工具,用来跟踪代码执行过程,查看变量的值,定位代码错误。

1、断点:在行号前面位置点击,出现红色圆点就是断点。程序运行到断点处会暂停。

2、Debug模式运行:右键选择Debug运行,而不是普通的Run

·在代码前面就是我们自己手动打的断点:

·点击这个小虫子图案就开始了Debug

·在点击了虫子图案之后就进入了下面的页面,我们可以看到有很多箭头,接下来详细解释一下分别都是什么功能:

①重新运行:快捷键是Ctrl + F5,

结束当前调试会话并重新启动调试,方便改了代码后立刻重跑

②停止:快捷键Ctrl + F2,

终止当前代码

③继续执行:快捷键:F9,

让程序继续运行,直到遇到下一个断点或程序结束

④暂停:

程序运行时强制暂停,方便查看当前状态(比如卡在死循环时)

⑤单步跳过:快捷键:F8,

执行当前行;如果这行是函数调用,不进入 函数内部,直接执行完并跳到下一行

⑥步入:快捷键:F7,

执行当前行时进入 被调用的函数内部,逐行调试函数体

⑦步出:快捷键:Shift + F8,

从当前函数中直接跳出,回到调用它的上一级函数

以上就是常用的Debug键,Debug主要的用途是用来排查为什么变量结果不对、代码为什么没有输出,就可以打断点看每一步变量。

三、print()输出函数

作用:把数据打印出到控制台。

3.1 sep参数

sep:多个打印对象之间的分隔符,默认是空格

python 复制代码
print("Hello World")
#sep是用来间隔多个值的,默认是空格
print('hhh','xxx',sep='///')

输出结果:

Hello World

hhh///xxx

3.2 end参数

end:打印结束之后追加的字符,默认end='\n'(换行符)

  • 默认:打印完成自动换行下一个print另起一行。
  • 修改 end 之后,会替换掉默认换行,下一次print会接着当前行输出。
python 复制代码
print("hello", end="@@")
print(666)
# 输出 hello@@666,两个打印拼接同一行

如果既要追加自定义结尾,又要换行:end="@@\n"

3.2 转义字符

表格

转义字符 功能
\n 换行
\t Tab 制表符,用于对齐
\\ 输出反斜杠\
\' 输出单引号
\" 输出双引号
python 复制代码
print("第一行\n第二行")
print("姓名\t年龄")
#结果:
#第一行
#第二行
#姓名	年龄

原始字符串 r:字符串前面加 r ,所有转义字符失效,原样输出文本

python 复制代码
print(r"hello\nworld") #输出 hello\nworld,不会换行

四、变量与标识符

4.1变量

4.1.1 变量的定义

变量:内存中的一块存储空间,用来存储数据。

语法:变量名 = 值

"="是赋值运算符,不是数学中的等于,代表把右边的值存入左边变量。

python 复制代码
num1 = 5
num2 = 20
res = num1 + num2
print(res)
#输出结果:25

4.1.2 变量输出

Print输出带引号和不带引号区别:

python 复制代码
# 不加引号:代表变量,变量必须提前定义,否则报NameError
print(num)

# 加上引号:代表纯粹文本字符串,直接输出引号内部文字
print("num")

num = 123
print(num)  # 输出:123

4.1.3 变量赋值

变量可以重复赋值,类型也可以改变

代码从上往下执行,后面赋值会覆盖前面的值,同一个变量可以存储不同类型数据

python 复制代码
num = 1
print(num)   # 1
num = 10
print(num)   # 10
num = 3.6
print(num)   # 3.6

4.2 标识符(变量命名规则)

变量名,函数名都叫标识符:

1、允许字符:字母、数字、下划线_

2、不能以数字开头

3、区分大小写:Age 和 age 是两个不同的变量

4、不能使用Python内置关键字(如if、for等)

三种命名规范(不报错,为可读性)

  1. 下划线分割法(Python 推荐) :全部小写,单词之间下划线隔开,user_namegoods_id
  2. 大驼峰命名法 :每个单词首字母大写,UserNameGoodsId
  3. 小驼峰命名法 :第一个单词小写,后续单词首字母大写,userNamegoodsId

五、数值类型

Python基础数值两种:

1、int整数 :10、-5,没有小数点

2、float浮点数(小数) :3.14

3、布尔类型 :布尔只有两个值:True、False,严格区分大小写 。写false会直接触发NameError

布尔值参与数学运算时:True等价1False等价0

python 复制代码
print(True + False)  # 1
print(1 + True)      # 2
python 复制代码
a = 10      # int整数
b = 3.14    # float浮点数
print(type(a))
print(type(b))
# <class 'int'>
# <class 'float'>

六、字符串str

字符串:文本数据,使用成对单引号' ',双引号" ",三引号""""""包裹。

python 复制代码
s1 = '我是字符串'
s2 = "我也是字符串"
s3 = """多行
字符串"""

单双引号可以互相嵌套;如果内部和外部引号一样,要用\' "转义

6.1 格式化输出

把变量嵌入字符串里面输出,三种常见写法。

6.1.1 f-string(推荐)

python 复制代码
name = "小明"
age = 18
print(f"我的名字是{name},今年{age}岁")

{变量名}大括号里面直接写变量。

f-string 的{}里面不仅可以写变量,还可以直接写数学表达式:

python 复制代码
n1 = 3
n2 = 4
print(f"n1 * n2 = {n1 * n2}")  #输出 n1 * n2 = 12

# 设置小数保留位数
num = 1.23456
print(f"保留两位小数:{num : .2f}")

6.1.2 format()

python 复制代码
print("我的名字是{},今年{}岁".format(name, age))

6.1.3 % 格式化

python 复制代码
print("我的名字是%s,今年%d岁" % (name, age))
# %s 代表字符串占位,%d整数占位,%f浮点数占位

七、算术运算符&赋值运算符

7.1 算术运算符

运算符 作用 示例
+ 3+2 →5
- 5-1 →4
* 2*3 →6
/ 除,结果永远浮点数 7/2 →3.5
// 取整除(地板除) 7//2 →3
% 取余数 7%2 →1
** 幂运算 2**3 →8

1. 算术运算符注意点

  1. /除法无论什么数字,返回结果永远是浮点数 ;除数不能为 0,会触发ZeroDivisionError
  2. //取整除是向下取整,负数要特别注意:
python 复制代码
print(10 // 3)   # 3
print(-10 // 3)  # -4,向下取整
  1. 运算中只要存在浮点数、运算结果就是浮点数

2. 运算符优先级

优先级从高到低:

幂运算** > 乘、除、取余、取整除 > 加、减

  • 同级运算符从左往右计算;
  • 使用小括号()可以人为改变运算优先级。

7.2 赋值运算符

基础赋值: =

复合赋值运算符:

python 复制代码
a = 10
a += 5   #等价 a = a +5
a -= 2   #等价 a = a -2
a *= 3   #等价 a = a *3
a /= 2   #等价 a = a /2
  1. 可以把一个变量的值赋值给另外一个变量
python 复制代码
n1 = 10
n3 = n1
print(n3) #10
  1. 复合赋值运算符(+=-=等)符号必须连写,中间不能加空格,否则报语法错误。
python 复制代码
n1 += 1   # ✅正确
n1 + = 1  # ❌ SyntaxError语法错误
  1. 复合赋值运算符只能作用于已经提前定义的变量,不能用于字面数字。
python 复制代码
n += 3      # ❌ n没有定义 → NameError
print(10 +=3) # ❌不能给数字字面量赋值

八、input()输入函数

python 复制代码
# input()接收控制台用户输入
content = input("请输入内容:")
print(content, type(content))

input 接收的所有用户输入,全部是字符串 str 类型,哪怕用户输入数字,拿到的也是字符串,如果要计算,需要手动做类型转换。

相关推荐
CTA终结者1 小时前
量化实现难,先看交易想法有没有说清
人工智能·python
hqyjzsb2 小时前
Python 技术人转型 AI:CAIE Level I、Level II 对比怎么选
开发语言·人工智能·python·金融·数据挖掘·数据分析·aigc
zhangzeyuaaa2 小时前
Python asyncio 事件循环演进:从手动管理到现代化实践
java·服务器·python
Yanjun2i2 小时前
Agent学习记录三:完成 Agent Loop
python·学习·agent
郝学胜_神的一滴2 小时前
Effective Python 条款 8: 同时遍历多组序列:zip 与 zip_longest 的实战避坑指南
python·pycharm
承渊政道2 小时前
【Python编程—从入门到实践】(Python字典:从基础语义到现代工程实践)
开发语言·python·pycharm·字典·嵌套
麻雀飞吧2 小时前
搜索“近期量化入门”时,先补交易理解再看 Python 和 API
人工智能·python
luj_17683 小时前
一线一区一变破解人盯人防守密码
开发语言·网络·c++·经验分享·算法
名字还没想好☜3 小时前
Python 字符编码实战:encode/decode、UnicodeDecodeError 与 open 的 encoding 坑
开发语言·后端·python·编程语言