Python 基础02-Python 入门

本文详细介绍了Python编程的基础知识,包括编码设置、注释规则、缩进原则、PEP8编码风格、变量的理解与定义、数据类型(如整型、字符串和常量)、输入与输出函数(如input和print)、算术运算与赋值、以及数据类型转换函数的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

官方文档:3.10.13 Documentation

一、Python 代码编写习惯

1. Python 中的编码

在 Python 3 版本之后,Python 默认使用 UTF-8 编码。UTF-8 是一种针对 Unicode 的可变长度字符编码。

2. 注释

注释可以对代码起到解释说明的作用,注释内容不是真的代码,并不执行。

快捷键:ctrl + /

(1) 单行注释

在 Python 中只有一种注释,就是以 # 开头的单行注释。

# 单行注释

...  # 单行注释

(2) 多行注释

可以用3个单引号或3个双引号作为多行注释,这种多行注释本质上是字符串。

'''
多行注释
多行注释
'''

"""
另一种多行注释
另一种多行注释
"""

(3) Pycharm 中设置代码模板

菜单栏中选择 File --> Settings --> Editor --> File and Code Templates,选择 Python Script。

在编辑器中设置如下模板:

# TODO
# @Time : ${DATE} ${TIME}
# @Author : Qingxue
# @Version : 0.0.1
# @IDE : ${PRODUCT_NAME}
# @Project : ${PROJECT_NAME}

点击 OK,之后创建 pythin 代码文件时会自动加上上面定义的代码模板。

3. 缩进

Python 是一种依赖缩进进行层次划分的语言。

Python中并没有花括号 {} 和小括号 (),所有代码的层次都是通过缩进来完成的,采用这样的方式极大地提高了代码的可读性。

4. PEP8 规范

PEP8 规范是 Python 编程中最新的代码样式指南,是一种 Python 标准的风格说明书,也是统一的代码样式规范。

PEP 8 – Style Guide for Python Code | peps.python.org

(1) 缩进的规定

  • 一个缩进级别均使用 4 个空格。
  • Python 3 中直接禁用了空格和 Tab 制表符混用的情况。

(2) 空行的规定

  • 在新建类的上方应该有两个空行。
  • 类方法的定义时应该在上方留一个空行。
  • 在 .py 文件末尾应该添加一个空行。

(3) 字符串引号的规定

  • 如果字符串中已经包含了某一种引号,则应该使用另一种引号作为字符串的标识。

(4) 注释的规定

  • 注释的英文首字符大写。
  • 推荐所有的注释均采用英文的方式进行书写。

(5) 命名的规定

  • 对于模块和软件包,推荐使用短小的英文小写字母进行命名,但是并不推荐使用下划线进行命名。
  • 对于建立的 class 类名,需要使用大写字母开头的驼峰方式进行命名,尽量简短易懂。
  • 对于变量和函数,要求必须使用全部小写的形式,在切分单词时使用下划线进行分隔,提高可读性。
  • 如果需要使用常量,要求采用全部大写字母的方式进行命名。

三、变量

Python 程序中,处理的所有数据都必须存储在变量中。

1. 变量的理解

官方的定义是变化的量叫变量,每一个变量都有变量名变量值

比如说我们要去五星级酒店找朋友,可是酒店里面的客房非常多。如果我们想快速找到朋友,必须得知道你朋友的房间号。根据房间号,我们立马可以知道房间的位置,打开门就能看见入住的客人。

所有的变量都存在内存中。我们可以把内存看成是一个大的五星级酒店,每一间房就代表数据存放的内存地址范围,在这一个地址范围中存起来的就是我们的数据,对应客房中所住的客人。

为了快速的查找或使用这个数据,通常我们把存储数据的地址范围和房间号一样,也定一个名称。这个名称就是变量

总结一下,房间就对应变量,房号对应变量名,入住的客人对应变量值。有了变量之后就可以快速的在茫茫(数海)的内存中。找到对应的数据。

2. 变量的定义和使用

(1) 变量的组成

变量有变量名变量值。变量名是一个标识符,由字母、数字和下划线组成,且不能以数字开头。变量值可以是 Python 中任意的数据类型。

(2) 变量的定义

变量名 = 表达式

表达式可以是一个值,后面会详细介绍表达式。

a = 100
b = 200

(3) 变量的使用

变量名

直接以变量名的形式使用变量。

print(a + b)

3. 标识符和保留字

标识符命名规则是 Python 中定义各种名字的时候的统一规范,具体如下:

  • 由数字、字母、下划线组成

  • 不能数字开头

  • 不能使用内置关键字

  • 严格区分大小写

保留字是 Python 中内置的关键字,具体如下:

andcontinueexceptifnonlocalreturnTrue
asdeffinallyimportnottryFalse
assertdelforinorwhileNone
breakeliffromispasswith
classelsegloballambdaraiseyield

Python 中的变量名和函数名要见名知意,一般使用小写字母加下划线命名。

# 推荐
my_name = 'Qingxue'
my_age = 25
my_sex = '男'

# 小驼峰命名 不推荐
myName = 'Yueqiao'

# 大驼峰命名 不推荐
MyAge = 25

4. 常量

常量是一种特殊的变量,广义上是指“不变化的量”,是指在编程语言中不会变动的数据的别称。

在 Python 的内置命名空间中,False、True、None 等就是常量。

Python 中不支持用户声明一个常量,虽然可以依托于自行实现类进行常量的模拟,但本质上 Python 并不能将常量和变量区分对待。

Python 一般通过约定俗成变量名全大写驼峰命名的形式表示这是一个常量,当然这样的常量依旧是可以被修改的。

# 常量
MAX_COUNT = 10000

只有通过自行定义常量实现类并通过该类进行实例化,才能实现常量“不能被修改”的要求。

5. 认识数据类型

# 整型 int
a = 1

# 字符串 str
b1 = 'abc'  # 单引号
b2 = '''abc'''  # 3个单引号
b3 = "abc"  # 双引号
b4 = """abc"""  # 3个双引号

# 布尔型
c1 = True
c2 = False

# 浮点型
d = 1.5

(1) type 函数

使用 type 函数可以获取变量的类型。

a = 69
print(a, type(a))  # 69 <class 'int'>

(2) 强类型

强类型语言:每个变量有且只有一个特定的类型。

虽然 Python 中可以直接按 a = 1 这种形式直接定义变量,但要注意,Python 是一种强类型语言,此时已由类型推断得出变量 a 为整型 int。

可以使用 a: int = 1 这种形式来定义变量,Pycharm 中会进行类型检测。

四、输入——input 函数

input('提示信息')

(1) 当程序执行到 input,等待用户输入,输入完成之后才继续向下执行;

(2) 在Python中,input 接收用户输入后,一般存储到变量,方便使用;

(3) 在Python中,input 会把接收到的任意用户输入的数据都当做字符串处理。

print('开始输入函数')

name = input('请输入你的名字:')  # Qingxue
print(type(name), name)  # <class 'str'> Qingxue

age = input('请输入你的年龄:')  # 25
print(type(age), age)  # <class 'str'> 25

注意:所有的通过 input 获取的数据,都是字符串类型。 Python 是一门强类型的语言。

五、运算

1. 算术运算

算术运算包括加减乘除取余等运算。

值1 [运算符] 值2

表达式:由数字、算符、数字分组符号(括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合。

运算符描述实例
+1 + 1 输出结果为 2
-1-1 输出结果为 0
*2 * 2 输出结果为 4
/10 / 2 输出结果为 5
//整除(取商)9 // 4 输出结果为2
%取余(模)9 % 4 输出结果为 1
**指数2 ** 4 输出结果为 16,即 2 * 2 * 2 * 2
()小括号小括号用来提高运算优先级,即 (1 + 2) * 3 输出结果为 9
# 指数计算
print('3的平方', 3 ** 2)  # 9
print('9的平方根', 9 ** 0.5, 9 ** (1 / 2))  # 3.0

# 字符串相加:多个字符串连接
print("'a' + 'b'", 'a' + 'b')  # ab

# 字符串乘数字:字符串复制多少次
print("'-' * 20", '-' * 20)  # --------------------

# 取余(模运算)
print('17模2', 17 % 2)  # 1

注意:混合运算优先级顺序:() 高于 ** 高于 * / // % 高于 + -。

2. 赋值运算

赋值运算符就只有等于号1个,功能为将 = 右侧的结果赋值给 = 左侧的变量。

运算符描述实例
=赋值将等号右侧的结果赋值给等号左侧的变量

左值:可以出现在赋值号左边的值,例如变量、左值表达式。

右值:可以出现在赋值号右边的值,比如单个值、右值表达式、函数调用等。

(1) 单个变量赋值

变量名 = 表达式

# 单个变量赋值
num = 1
print(num)  # 1

(2) 多个变量赋值

变量名1, 变量名2, ... , 变量名n = 表达式1, 表达式2, ... , 表达式n

# 多个变量赋值
num1, float1, str1 = 1, 2.2, 'a3'
print(num1, float1, str1)  # 1 2.2 a3

3. 复合赋值运算 

复合赋值运算即为算术运算结合赋值运算,先算术运算,再赋值。

运算符描述实例
+=加法赋值运算符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
# 复合赋值运算,先运算,再赋值
a = 5
a += 4
print(a)  # 9

# 复合赋值运算 + 算术运算
b = 6
c = 7

c *= c + b
print(c)  # 91

4. 总结

(1) 算数运算的优先级

混合运算优先级顺序:() 高于 ** 高于 * / // % 高于 + -

(2) 赋值运算符

=

(3) 复合赋值运算符

+= -=

优先级:

  • 先算复合赋值运算符右侧的表达式
  • 再算复合赋值运算的算数运算
  • 最后算赋值运算

六、输出——print 函数

print(...values, end)

print 函数的本质是输出到控制台。

格式化输出有格式化符号和 f-字符串两种方式。

1. 格式化符号

print('...[占位符]...' % (变量))

格式化符号在要输出的字符串中当作占位符,输出时占位符将被对应的变量格式化后替换输出。

格式符号转换格式符号转换
%s字符串%x十六进制整数(小写ox)
%d有符号的十进制整数%X十六进制整数(大写OX)
%f浮点数%e科学计数法(小写'e')
%c字符%E科学计数法(大写'E')
%u无符号十进制整数%g%f和%e的简写
%o八进制整数%G%f和%E的简写
%x十六进制整数(小写ox)
%X十六进制整数(大写OX)
%e科学计数法(小写'e')
%E科学计数法(大写'E')
%g%f 和 %e 的简写
%G%f 和 %E 的简写

(1) 格式化符号 %s

格式化符号 %s 用于格式化字符串。

my_name = 'Qingxue'
my_age = 25
my_city = 'Beijing'

# print('我的名字是:' + my_name)  # 我的名字是:Qingxue
print('我的名字是:%s' % my_name)  # 我的名字是:Qingxue

# print('我的年龄是:' + my_age)  # TypeError: can only concatenate str (not "int") to str
print('我的年龄是:%d' % my_age)  # 我的年龄是:25

# %s 很特殊,变量类型 str 和 int 都可以
print('我的名字是%s,今年%s岁,住在%s' % (my_name, my_age, my_city))  # 我的名字是Qingxue,今年25岁,住在Beijing

格式化符号 %s 比较特殊,格式化 str 和 int 类型的变量都可以。

(2) 格式化符号 %d 和 %f

格式化符号 %d 用于格式化整数。可以写成 %nd 的形式(n 为数字),表示至少占 n 位,不够则在前面用空格补齐,n 为负数代表从后面用空格补齐。写成 %0nd 则表示前面用0补齐(n 为正数)。

格式化符号 %f 用于格式化浮点数,默认保留小数点后6位小数。可以写成 %.nf 的形式(n 为数字),表示保留 n 位小数。

c1 = 98
c2 = 78
c3 = 60

# print('我的总成绩是%s,平均成绩为%s。' % (c1 + c2 + c3, (c1 + c2 + c3) / 3))  # 我的总成绩是236,平均成绩为78.66666666666667。
# %f 默认保留6位小数
print('我的总成绩是%d,平均成绩为%f。' % (c1 + c2 + c3, (c1 + c2 + c3) / 3))  # 我的总成绩是236,平均成绩为78.666667。
# %.2f 保留2位小数
print('我的总成绩是%d,平均成绩为%.2f。' % (c1 + c2 + c3, (c1 + c2 + c3) / 3))  # 我的总成绩是236,平均成绩为78.67。
c4 = 12
c5 = 9
c6 = 18

print('我的总成绩是%d,平均成绩为%.2f。' % (c4 + c5 + c6, (c4 + c5 + c6) / 3))  # 我的总成绩是39,平均成绩为13.00。
# %3d 代表保留3位正数,不够前面用空格补齐
print('我的总成绩是%3d,平均成绩为%.2f。' % (c4 + c5 + c6, (c4 + c5 + c6) / 3))  # 我的总成绩是 39,平均成绩为13.00。
# %03d 代表保留3位正数,不够前面用0补齐
print('我的总成绩是%03d,平均成绩为%.2f。' % (c4 + c5 + c6, (c4 + c5 + c6) / 3))  # 我的总成绩是039,平均成绩为13.00。

2. f-字符串

print(f'...{变量}...')

# f{'字符串'}
print(f'我的名字是{my_name},今年{my_age}岁')  # 我的名字是Qingxue,今年25岁

3. 结束符

end 作为 print 函数的第2个参数,可以使用 end 指定的字符串替换 print 输出结尾的换行符。

print('abc')
print('def')
'''
abc
def
'''

# end 符
print('abc', end='')
print('def')
'''
abcdef
'''

七、常用的数据类型转换函数

转换数据类型常用的函数:

  • int()
  • float()
  • str()
  • list()
  • tuple()
  • eval()

1. 字符串转整数

使用 int 函数可以将数字字符串转为整数。

# 字符串转整数
a = '1234'
b = int(a)

print(a, type(a))  # 1234 <class 'str'>
print(b, type(b))  # 1234 <class 'int'>

# b = int('1234abcd')  # ValueError: invalid literal for int() with base 10: '1234abcd'

2. 字符串转浮点数

使用 float 函数可以将数字字符串转为浮点数。

# 字符串转浮点数
d = float('1.23')
print(d)  # 1.23
# d = float('1.23abc')  # alueError: could not convert string to float: '1.23abc'

3. 执行表达式——eval 函数

eval 函数可以执行表达式字符串。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晴雪月乔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值