基础语法
基础语法
分类:Python
最后修改时间:2026-01-11 05:49:23.796
标识符命名规则
标识符:程序中可以自己起名的内容(变量名、函数名、类名、模块名等)

常量
用全大写变量名表示常量,常量可以被修改

变量
变量:是一个代号,用来与某个值(字面量、函数、类等)建立绑定关系 在读取或修改某个值时,可以通过变量去读取和修改 语法:变量名 = 值
和C语言不同的地方是 python不可以先声明再赋值,而是直接进行赋值(名字绑定)
python是动态类型语言
//在C语言中,可以声明的同时赋值
int a = 10;
//或,先声明,再赋值
int a;
a = 10;
//在python中,没有声明这个概念,本质是"变量名"->指向某个"值"
a = 10
//python是动态类型语言
a = 10
print(type(a)) # <class 'int'>
a = 3.14
print(type(a)) # <class 'float'>
a = "hello"
print(type(a)) # <class 'str'>

注释

字符编码
编码:将字符集转成二进制的过程 解码:将二进制转成字符集的过程
python3默认使用UTF-8编码解码

数据类型
python中变量无类型,数据有类型
print(type('张三')) #<class 'str'>
print(type("18")) #<class 'str'>
print(type(12)) #<class 'int'>
print(type(52.3)) #<class 'float'>
name='李四'
print(type(name)) #<class 'str'>
整形
#所谓整型,就是没有小数点的数字,可以是正数,也可以是负数,也可以是0。
age = 18
temp = -15
Score = 0
#当数很大时,我们可以使用下划线将数字进行分组,来让数字变得更易读。
salary = 300_000
house_price = 3_200_000
graduates = 12_000_000
print(salary, house_price, graduates)
#Python中整数的上限值,取决于执行代码的计算机的内存和处理能力。
a=9**999
print(a)
浮点型
#浮点型就是带有小数点的数字。
weight = 65.2
balance = 1425.58
out_temp = -25.2
price = 120.0
#浮点型的科学计数法表示。
speed_of_sound = 3.4e2 # 3.4乘以10的2次方。
world_population = 7.8e9 # 7.8乘以10的9次方。
distance_sun_earth = 1.496E8 # 1.496乘以10的8次方。
speed_of_light = 2.998E+8 # 2.998乘以10的8次方。
one_ml =1e-3 # 1乘以10的-3次方。
one_mg =1E-3 # 1乘以10的-3次方。
字符串
# 单引号和双引号的写法是等价的,二者都不能直接换行(要用圆括号才能换行),单引号用的多.
message1='尚硅谷,让天下没有难学的技术!'
message2="尚硅谷,让天下没有难学的技术!"
# 三个单引号的写法,可以直接换行,并且可以作为多行注释使用。
message3='''尚硅谷,让天下没有难学的技术!'''
# 三个双引号的写法,可以直接换行,也可以作为多行注释使用,还能作为文档字符串使用。
message4="""尚硅谷,让天下没有难学的技术!"""
name = '张三'
gender = '男'
weight = 65.2
age = 12
# 写法一:直接用加号进行拼接,写起来很麻烦且代码很乱,而且只能是字符串之间拼接。
info1 ='我叫'+ name +',我是'+ gender +'生'
# 写法二:使用占位符#%s占位字符串,%f占位浮点数,%i占位整数,%d占位十进制的整数,%s是万能的。
info2 ='我叫%s,我是%s生,我体重是%d,年龄是%d'%(name,gender,weight,age)
# 写法三:使用f-string
info3 =f'我叫{name},我是{gender}生,我体重是{weight},年龄是{age}'
print(info3)
字符串精度控制
</column>
<column ratio="81.25">

</column>
转义字符
\' 单引号
\" 双引号
\\ 反斜杠本身
\n 换行
\t 制表符(Tab)
\r 回车
\b 退格
数据类型转换
-
把指定数据转为字符串:str()
-
把指定数据转为整型:int() 数字之间有空格或 . 以及字符,都会报错
-
把指定数据转为浮点型:float() 数字之间有空格或 . 以及字符,都会报错
算术运算符
与C语言不同的是 /是除,但是结果始终是浮点数 //也是除,但是结果是整数 **是指数,比如2**3=8
赋值运算符和复合赋值运算符
赋值运算符 a=18
复合赋值运算符
age = age +1 等同于 age += 1
*= /= //= %= **=
分类:Python / 基础语法
最后修改时间:2026-01-12 06:46:20.495
字面量
- 所谓字面量,就是直接写在代码中的具体值。
- Python 的字符串中可以包含任意字符,且必须使用引号包起来。
- 字符串的引号,可以是:单引号、双引号、三个单引号、三个双引号。
- 写在 Python 文件头部的字符串,会被自动识别成docstring(文档字符串)。
- 文档字符串的主要作用是:对当前 Python 文件进行一些说明,且文档字符串必须用三个双引号。
- 调整了一些 PyCharm的设置:检查代码、AI智能提示。
布尔类型
True 1
False 0
#自己定义的布尔值
a = True
b = False
#靠程序执行得到的布尔值
c=5>3
d=7<2
print(type(a),a) #<class 'boll'> True
print(type(b),b) #<class 'boll'> False
print(type(c),c) #<class 'boll'> True
print(type(d),d) #<class 'boll'> False
#布尔类型是int类型的子类型,底层的本质是用1表示True,用0表示False
print(int(True)) #1
print(int(False)) #0
print( 4 + True) #5
print(True + True) #2
print(bool(1)) #True
print(bool(200)) #True
print(bool(-10)) #True
print(bool(0)) #False
#任意字符串的布尔值都是True
print(bool('0')) #True
print(bool('1')) #True
print(bool('Hello')) #True
#空字符串布尔值为False
逻辑运算符
And
#and用于判断其两侧的值,是否都为True
print(True and True) #True
print(True and False) #False
print(False and True) #False
print(False and False) #False
print(8 >7and 8>7) #True
print(8 >7and 2>3) #False
print(2 >3 and 8>7) #False
print(2>3and 2>3) #False
#and具备"逻辑短路"能力
print(False and 3 / 0) #False
print(True and 3 / 0) #报错,因为判断了True要继续判断3/0,0不能作除数,所以报错
#and返回的不一定是布尔值,它返回的是某个参与计算的值本身
#规则:and会先看左边,如果左边是"假",就直接返回左边,否则返回右边
#备注:若参与and运算的值不是布尔值,那Python会自动转为布尔值,然后再进行逻辑操作
print(2 - 2 and True) #0
print(''and True) #
print(True and 8 / 2) #4.0
print(3 + 3 and 3 *4) #12
or
#or用于判断其两侧,是否至少有一个为True(只要有一个是True,那就返回True)
print(True or True) #True
print(True or False) #True
print(False or True) #True
print(False or False) #False
#or同样具备逻辑短路能力
#or返回的也不一定是布尔值,它返回的是参与计算的值本身
#规则:or会先看左边,如果左边为"真",就直接返回左边,否则返回右边
print(7 - 2 or False) #5
print('你好'or'Hello') #你好
print(False or 8 / 2) #4.0
print(2 - 2 or 3 *4 #12
not
#not用于取反
print(not True) #False
print(not False) #True
print(not 3 >2) #False
print(not 3 < 2) #True
#not返回的值,一定是布尔值!
print(not 0) #True
print(not 3 >2) #False
print(not 9 // 4) #False
print(not 'abc') #False
进制
十进制:用10个符号来表示数
满十进一
二进制:用2个符号来表示数
满二进一
八进制:用8个符号来表示数
满八进一
十六进制:用16个符号来表示数
满十六进一

十进制转换

不同进制写法
# Python中所有的非十进制数字,只是代码层面的编写方式,是给程序员看的
# Python在对上面的num1、num2、num3进行计算、打印等操作时,会自动将其转为十进制

输入语句
input()获取到的内容全都是字符串类型
print('请输入你的年龄')
age = input()
print(type(age)) #<class 'str'>
print(f'你今年的年龄是{age}') #18
age = input('请输入你的年龄')
print(type(age)) #<class 'str'>
print(f'你今年的年龄是{age}') #18
分类:Python / 基础语法
最后修改时间:2026-01-13 05:08:00.672
比较运算符
= = 判断左右两侧是否相等
! = 判断左右两侧是否不等
> 判断左侧是否大于右侧
< 判断左侧是否小于右侧
> = 判断左侧是否大于等于右侧
< = 判断左侧是否小于等于右侧
a = 5
b = 6
print(a = b) #False
result = a != b
print(result) #Ture

分支
分支:基于判断结果,来决定走哪条路径
分支之间是互斥的
单分支
if 判断条件: #判断条件可以是关系运算。也可以是布尔值
执行代码1
执行代码2
#if后的执行语句必须有要空格,并且每个执行语句前的空格数相同
age = int(input('请输入你的年龄'))
if age >= 18:
print('你是成年人')
print(f'你的年龄是{age}岁')
双分支
if-else
if 判断条件:
条件成立时执行的代码1
条件成立时执行的代码2
else:
条件不成立时执行的代码1
条件不成立时执行的代码2
age = int(input('请输入你的年龄'))
if age >= 18:
print('你是成年人')
print(f'你的年龄是{age}岁')
else:
print('你是未成年人')
print(f'你的年龄是{age}岁')
多分支
if 判断条件1:
条件1成立时执行的代码
elif 判断条件2:
条件2成立时执行的代码
elif 判断条件3:
条件3成立时执行的代码
else:
上述所有条件不成立时执行的代码
age = int(input('请输入你的年龄'))
if age <= 18:
print('你是幼儿')
elif age <= 18:
print('你是青少年')
elif age <= 30:
print('你是青年')
elif age <= 50:
print('你是中年')
elif age <= 60:
print('你是中老年')
else:
print('你是老年')
嵌套分支
if 判断条件1:
条件1 成立时执行的代码1
条件1 成立时执行的代码2
if 判断条件2:
条件2 成立时执行的代码1
条件2 成立时执行的代码2
elif 判断条件3:
条件3成立时执行的代码
else:
条件2、条件3都不成立时执行的代码1
条件2、条件3都不成立时执行的代码2
else:
条件1 不成立时执行的代码1
条件1 不成立时执行的代码2
if 判断条件4:
条件4 成立时执行的代码
else:
条件4不成立日对吧代码
age =int(input('请输入你的年龄'))
has_report=input('你是否提交了体检报告:(是/否)')
level=int(input('请输入你的会员等级:(1/2/3)'))
if 18 <= age <= 45:
print('您的年龄符合要求!')
if has_report=='是':
print('您已提交报告!')
print('您可以参加比赛!')
if level==1:
print('您的会员礼物是 纪念T恤!')
elif level==2:
print('您的会员礼物是专业跑鞋!')
elif level==3:
print('您的会员礼物是运动耳机!')
else:
print('比赛结束,感谢您的参与!')
elif has_report=='否':
print('您未提交体检报告,不能参加比赛!')
else:
print('您提交的报告有误,请重新提交!')
else:
print('您的年龄不符合要求!')
分类:Python / 基础语法
最后修改时间:2026-01-14 06:22:17.452
循环
while循环
while 循环条件:
条件成立时执行的操作1
条件成立时执行的操作2
#循环条件为True会继续循环,为False会终止循环。
#要设计好循环条件,避免死循环。
riddle = '从0-100中选一个数'
answer = '23'
guess = ''
print(f'问题是:{riddle}')
while guess != answer:
guess= input('请输入答案')
if guess == answer:
print('回答正确')
else:
print('回答错误')
for循环
for 当前取出的值 in 可迭代对象:
要执行的循环操作1
要执行的循环操作2
#可迭代对象中的元素有多少个,循环就执行多少次。
#只要不在循环内部修改可迭代对象,for 循环通常是不会出现死循环的。
#数字循环
#使用for循环遍历range()所指定的数字范围
for n in range(1,4)
print('你好',n)
#你好1
#你好2
#你好3
字符串循环
#使用for循环遍历字符串
for m in 'abcd'
print(m)
#a
#b
#c
for循环还能遍历很多我们没有讲到的东西,比如:元组、列表、对象...
#加密代码
text = input('请输入要加密的文字:')
secret = ''
for t in text:
secret += chr(ord(t) + 1)
print(f'加密后的文字是:{secret}')
#解密代码
secret = input('请输入要解密的文字:')
text = ''
for s in secret:
text += chr(ord(s) - 1)
print(f'经过解密的文字是::{text}')
while循环 和 for循环 的区别
九九乘法表
for row in range(1,10):
for item in range(1,row+1):
print(f'{item}*{row}={item*row}',end='\t')
print()

continue和break
continue:跳过本次循环剩余语句,随后进入下一次循环。 break:立即终止循环,不再执行后续循环。