往往
往往
Published on 2024-08-29 / 19 Visits
0
0

[Python 学习] Python 基础-One

一、Python 基础语法

1.字面量

字面量:在代码中被写下来的固定的值,称之为字面量。如 123、hello、你好

2.注释

注释:在程序代码中对程序代码进行解释说明的文字。

注释不是程序,不能被执行,只是对程序代码进行解释说明,让别人可以看懂程序代码,大大增强程序的可读性。

注释的分类:

  • 单行注释:以 # 开头,# 右边的所有文字当作说明,起辅助说明的作用。

# 我是单行注释
print("Hello World!")

注意,# 和注释内容之间一般以一个空格隔开。

  • 多行注释:以 一对三个双引号 引起来注释内容。

"""
  我是
  多行注释
  的注释内容
"""
print("锄禾日当午")
print("汗滴禾下土")

3.变量

变量:在程序运行时,能储存运算结果或能表示值的抽象概念。

简单的说,变量就是在程序运行时,记录数据用的。

变量的定义格式:

变量名称 = 变量的值

每一个变量都有自己的名称,称之为:变量名

等号表示赋值,表示将等号右侧的值,赋予左侧的变量

每一个变量都有自己存储的值(内容),称之为:变量值

4.数据类型

常用的数据类型:

  • 数字(number):

    • 整数(int),如10、-10

    • 浮点数(float),如13.14、-13.14

    • 复数(complex),如:4+3j,以 j 结尾表示复数

    • 布尔(bool),表示逻辑,True为真,False为假,True记作1,False记作0

  • 字符串(string):描述文本的一种数据类型,由任意数量的字符组成,如abcdefg,一二三四五,@#¥%……,被双引号包围的都是字符串

  • 列表(list):有序的可变序列,是Python中使用最频繁的数据类型,可有序记录一堆数据

  • 元组(tuple):有序的不可变序列,可有序记录一堆不可变的Python数据集合

  • 集合(set):无序不重复集合,可无序记录一堆不重复的Python数据集合

  • 字典(dictionary):无序Key-Value(键值对)集合,可无序记录一堆键值对的Python数据集合

在Python中,可以通过type( )语句来查看类型信息

  • 查看字面量的类型:

print(type(123))
# 输出<class 'int'>
print(type("Hello"))
# 输出<class 'str'>
  • 查看变量中存储的数据类型:

name = "往往"
name_type = type(name)
print(name_type)
# 输出 <class 'str'>

在Python 中变量是没有类型的,变量存储的数据有类型。

5.类型转换

数据类型转换的应用场景:

  • 从文件中读取的数字,默认是字符串,需要转换成数字类型。

  • input()语句,默认结果是字符串

  • 将数字转换成字符串以写出到外部系统

  • 等等

常见转换语句:

  • int(x):将 x 转换为一个整数

  • float(x):将 x 转换为一个浮点数

  • str(x):将对象 x 转换为字符串

num = 123
print(type(num),num)
# 此时输出为 <class 'int'>,123 ,num存储的123为整数类型
num_str = str(num)
# 将num中的数据转换为字符串类型
print(type(num_str),num_str)
# 此时输出为 <class 'str'>,123 ,num_str存储的是"123",即字符串123

6.标识符

在 Python 程序中,我们可以给很多东西起名字,比如:

  • 变量的名字

  • 方法的名字

  • 类的名字,等等

这些名字,我们把它统一称为标识符,用来做内容的标识。

所以,标识符:

标识符是用户在编程的时候所使用的的一系列名字,用于给变量、类、方法等命名。

在 Python 中,标识符命名规则主要有三类:

  • 内容限定:标识符命名只允许出现英文、中文、数字、下划线( _ ),这四类元素,其余任何内容都不被允许。

注意:不推荐使用中文;数字不可以开头

  • 大小写敏感:Andy 和 andy 是两个不同的变量名,Python能够区分它们。

  • 不可使用关键字:类似 False、True、None、if、for、in 等等,在 Python 中有其特定用处的单词,称为关键字。

变量命名规范

  • 见名知意:简单明了,看到名字知道含义,类似变量名 name、num、ans等等。

  • 下划线命名法:多个单词组合变量名时,用下划线分隔,如变量名 first_name、student_id 等等。

  • 英文字母全小写:命名变量中的英文字母应全部小写。

7.运算符

算术运算符

  • + :加,两个对象相加 a + b

  • - :减,得到负数或是一个数减去另一个数 a - b

  • * :乘,两个数相乘或是返回一个被重复若干次的字符串 a * b

  • / :除,两个数相除,b / a

  • // :取整除,返回商的整数部分

  • % :取余,返回除法的余数

  • ** :指数,a**b 为 a 的 b 次方

赋值运算符

  • = :赋值运算符,把 = 号右边的结果赋值给左边的变量

符合赋值运算符

  • += :加法赋值运算符, 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

8.字符串扩展

字符串的三种定义方式

  • 单引号定义法:name = 'Avery的小站'

  • 双引号定义法:name = "Avery的小站"

  • 三引号定义法:name = """Avery的小站"""

三引号定义法,和多行注释的写法一样,同样支持换行操作。

使用变量接收时为字符串

不使用变量接收,可以当作多行注释使用。

注意:如果想要在字符串内使用引号,可以使用转义字符(\)来将引号解除引用,变成普通字符串。

字符串拼接

如果有两个字符串的字面量(文本),可以使用“ + ”将他们拼接起来,如:

print("Avery" + "的" + "小站")

输出为 Avery的小站

其中的字面量都可以替换成相应的变量名,仍然可以实现字符串拼接。

注意:使用“ + ”进行字符串拼接时,拼接的字面量以及变量只能是字符串类型,不能是其他类型。

字符串格式化

有时,拼接字符串并不好用:

  • 变量过多,拼接过于麻烦

  • 字符串无法和数字或其他类型完成拼接

name = "Avery"
message = " %s 的小站" % name
print(message)
# 输出为 Avery 的小站

其中的,%s

  • % 表示:我要占位

  • s 表示:将变量变成字符串放入占位的地方

简单来说,就是 %s 先占个位置,等会有个变量会来,然后%s 会把他变成字符串填入占位的地方。

若有多个变量占位,变量要用括号括起来,并按照占位的顺序填入

class_num = 57
avg_salary = 16781
message = "Python大数据学科,北京%s期,毕业平均工资:%s" % (class_num,avg_salary)

除此以外,Python 还支持其他数据类型占位:

  • %s :将内容转换为字符串,放入占位位置

  • %d :将内容转换成整数,放入占位位置

  • %f :将内容转换成浮点数,放入占位位置

格式化的精度控制

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

  • m,控制宽度,要求是数字(很少使用),设置的宽度小于数字自身,不生效

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

示例:

  • %5d:表示将整数的宽度控制在5位,将小数点精度设置为2

  • %5.2f:表示将整数宽度设置为5,小数点精度设置为2

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

  • %.2f:表示不限制宽度,只设置小数点精度为 2

字符串快速格式化的方式

通过语法:f“内容{变量}”的格式进行快速格式化

例如:

name = '往往'
print(f"我是{name}")
#输出:我是往往

这种方式不理会类型,不做精度控制,适合对精度没有要求的时候快速使用

表达式格式化

表达式:一条具有明确执行结果的代码语句

如:

1 + 1、5 * 2,name = “张三”、age = 11 + 11

print("1 * 1 的结果是:%d" %(1 * 1))
print(f"1 * 1 的结果是:{1 * 1}")
print("字符串在Python中的类型时:%s" % type('字符串')

在无需使用变量进行数据存储的时候,可以直接格式化表达式,简化代码

数据输入

input 语句(函数)

  • 使用 input()语句可以从键盘获取输入

  • 使用一个变量接收(存储)input 语句获取的键盘输入数据即可

print("你是谁?")
name = input()
name = input(你是谁?)

注意:无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型,如果需要进行数据转换,需要自行进行转换


Comment