Python基础(二、必备知识,不用背,用用就会了~)

2023-12-09 14:20

本文主要是介绍Python基础(二、必备知识,不用背,用用就会了~),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、基础知识

1.标识符

在Python中,标识符是用来标识变量、函数、类、模块或其他对象的名称。一个有效的标识符由字母、数字和下划线组成,且不能以数字开头。Python是区分大小写的,因此myVariablemyvariable被视为不同的标识符。

下面是一些关于Python标识符的规则:

  • 标识符只能包含字母(a-z,A-Z)、数字(0-9)和下划线(_)。
  • 标识符不能以数字开头。
  • 标识符不能是Python的关键字,如ifforwhile等。
  • 标识符对大小写敏感,例如myVariablemyvariable被视为不同的标识符。

以下是一些有效的标识符示例:

my_variable = 42 
name = "John" 
PI = 3.14 
is_valid = True

2.注释及书写规范

1)注释

在编写代码时,添加适当的注释是非常重要的。注释可以帮助其他开发人员理解你的代码,也可以帮助你自己在一段时间后回顾代码时更快地理解其中的逻辑。合理的注释可以提高代码的可读性和可维护性。

单行注释

在Python中,单行注释以#开头,可以跟在一行代码的后面,或者单独作为一行使用。单行注释通常用于解释代码的某一部分或者添加临时的说明。

# 这是一个单行注释
x = 5  # 设置变量x的值为5

多行注释

Python中没有专门的多行注释语法,但可以使用多个单行注释来实现多行注释的效果。另一种常用的方式是使用三引号('''""")来包裹多行文本作为注释。

""" 这是一个多行注释的示例 可以用来解释函数、类或整个代码块 """

2)代码规范

作为一种高级语言,Python有着明确的代码规范,其中最有名的是PEP 8(Python Enhancement Proposal 8)。PEP 8规定了Python代码的书写规范,包括缩进、命名规则、注释等方面。

缩进

在Python中,缩进是非常重要的,它代表着代码块的层次结构。通常情况下,推荐使用4个空格来进行缩进。

if x > 5:print("x大于5")
else:print("x小于等于5")

命名规则

在Python中,变量名、函数名和类名都应该遵循一定的命名规则。通常来说,变量名使用小写字母,单词之间用下划线连接;函数名和方法名同样使用小写字母和下划线;类名使用首字母大写的驼峰命名法。

user_name = "Alice"  # 变量名
def calculate_sum(x, y):  # 函数名return x + y
class MyClass:  # 类名pass

注释规范

在编写注释时,应该遵循一定的规范。注释应该清晰、简洁,并且符合代码的逻辑。注释应该描述“为什么”而不是“做了什么”,因为代码本身已经展现了“做了什么”。

避免无意义的注释,例如显而易见的内容或者过时的注释。注释应该与代码保持同步,及时更新和维护。

3.关键字

  • False:布尔值False
  • None:表示空对象或无值
  • True:布尔值True
  • and:逻辑运算符AND
  • as:用于创建别名
  • assert:断言,用于判断条件是否为真,若为假则触发异常
  • async:定义异步函数
  • await:等待异步函数执行完成
  • break:跳出循环语句
  • class:定义类
  • continue:结束当前循环,开始下一轮循环
  • def:定义函数
  • del:删除变量或列表中指定元素
  • elif:else if的缩写,用于多重条件判断
  • else:用于if条件语句的否定条件
  • except:处理异常
  • finally:无论是否有异常都会执行的代码块
  • for:用于循环遍历序列
  • from:从模块中导入指定的部分
  • global:声明全局变量
  • if:条件语句,用于条件判断
  • import:导入模块
  • in:用于检查序列中是否存在某个值
  • is:比较两个对象是否相同
  • lambda:定义匿名函数
  • nonlocal:声明非局部变量
  • not:逻辑运算符NOT
  • or:逻辑运算符OR
  • pass:占位符,不做任何事情的语句
  • raise:触发异常
  • return:用于函数返回值
  • try:尝试执行代码块并处理可能出现的异常
  • while:用于循环执行一段代码直到条件不成立
  • with:用于简化代码块的书写,例如文件操作等
  • yield:生成器的关键字,返回一个迭代器

4.运算符

1)算术运算符

  • 加法运算符(+):用于对两个数字进行相加。
  • 减法运算符(-):用于对两个数字进行相减。
  • 乘法运算符(*):用于对两个数字进行相乘。
  • 除法运算符(/):用于对两个数字进行相除,结果为浮点数。
  • 整除运算符(//):用于对两个数字进行整除,结果为整数。
  • 取模运算符(%):用于获取两个数字相除的余数。
  • 幂运算符(**):用于计算一个数的幂。
def aa():a = 10b = 3print(a + b)  # 输出:13print(a - b)  # 输出:7print(a * b)  # 输出:30print(a / b)  # 输出:3.3333333333333335print(a // b)  # 输出:3print(a % b)  # 输出:1print(a ** b)  # 输出:1000

2)比较运算符

比较运算符用于比较两个值。

  • 等于(==):如果两个操作数相等,则条件成立。
  • 不等于(!=):如果两个操作数不相等,则条件成立。
  • 大于(>):如果左操作数大于右操作数,则条件成立。
  • 小于(<):如果左操作数小于右操作数,则条件成立。
  • 大于等于(>=):如果左操作数大于或等于右操作数,则条件成立。
  • 小于等于(<=):如果左操作数小于或等于右操作数,则条件成立。
def aa():x = 10y = 20print(x == y)  # 输出:Falseprint(x != y)  # 输出:Trueprint(x > y)  # 输出:Falseprint(x < y)  # 输出:Trueprint(x >= y)  # 输出:Falseprint(x <= y)  # 输出:True

3)逻辑运算符

逻辑运算符用于连接两个或多个布尔表达式。

  • 与运算符(and):如果两个操作数都为True,则条件成立。
  • 或运算符(or):如果两个操作数任意一个为True,则条件成立。
  • 非运算符(not):用于对操作数取反。
def a():p = True q = False print(p and q) # 输出:False print(p or q) # 输出:True print(not p) # 输出:False

5.数据类型

整数类型(int)

整数类型用于表示整数值,例如:-50100等。

浮点数类型(float)

浮点数类型用于表示带有小数部分的数值,例如:3.142.71828等。

字符串类型(str)

字符串类型用于表示文本数据,例如:"Hello"'Python'等。字符串可以使用单引号或双引号来表示。

列表类型(list)

列表类型用于存储一组有序的元素,可以包含不同类型的元素,例如:[1, 2, 3]['apple', 'banana', 'orange']等。

元组类型(tuple)

元组类型也用于存储一组有序的元素,但是元组创建后不能被修改(immutable),例如:(1, 2, 3)('a', 'b', 'c')等。

字典类型(dict)

字典类型用于存储键值对(key-value pair)的数据,例如:{'name': 'Alice', 'age': 25}

集合类型(set)

集合类型用于存储独一无二的元素,不包含重复的值,例如:{1, 2, 3, 4}

布尔类型(bool)

布尔类型用于表示逻辑上的真(True)和假(False)值。在条件判断和逻辑运算中经常用到。

6.数据类型转换

在Python中,可以使用内置函数进行数据类型的转换,例如:

x = 10
y = float(x)  # 将整数转换为浮点数
z = str(x)    # 将整数转换为字符串

二、实践

1.练习

新建一个test.py文件,可以尝试将上面的提到的内容都进行测试一下。

代码当中进行了字符串、整数、浮点数的定义,进行了三种拼接方式,是否能找到哪三种呢?

通过input进行获取键盘输入,这样就可以做一些交互式的小游戏了。

def aa():trtest = "test"numtest = 11floattest = 12.1004# %s字符串 %d整数 %f浮点数name = '%s测试%d拼接%f字符串"' %(trtest,numtest,floattest)print(name)# %后面加数字调整精度name = "%s测试%4d拼接%2.2f字符串'" %(trtest,numtest,floattest)print(name)# %后面加数字调整精度,四舍五入name = """"%s测试%4d拼接%2.0f字符串""" %(trtest,numtest,floattest)print(name)print('{}测试{}拼接{}字\'符串'.format(trtest,numtest,floattest))print(f'{trtest}测试{numtest}拼接{floattest}字符串')print(f'2**3结果是{2**3}')# type获取对象类型print(f'name的格式是{type(name)}')# 接受键盘输入内容,input接收到的数据永远是字符串name = input('请告诉我你是谁')print(f'我是{name}')

 在命令提示符(win+r,cmd)中,切换路径到test.py目录,输入python test.py运行结果如下:

98386bdd3f934401baed1740e7cc8249.png

2.迷失森林小游戏 

import randomdef play_game():print("你迷失在了一片神秘的森林中...")print("你需要找到出口才能逃离这个森林。")directions = ["前方", "左侧", "右侧"]target_direction = random.choice(directions)  # 随机选择一个方向作为出口while True:user_choice = input("请选择一个方向(前方/左侧/右侧):")if user_choice not in directions:  # 判断用户输入的方向是否合法print("请输入有效的方向!")continueif user_choice == target_direction:print("恭喜你,你找到了出口!你成功逃离了森林。")else:print("很遗憾,这个方向没有出口。继续探索吧。")play_again = input("是否再次尝试?(是/否):")if play_again.lower() == "是":target_direction = random.choice(directions)else:print("谢谢游玩!")breakplay_game()

 

 

这篇关于Python基础(二、必备知识,不用背,用用就会了~)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/474004

相关文章

Python结合PyWebView库打造跨平台桌面应用

《Python结合PyWebView库打造跨平台桌面应用》随着Web技术的发展,将HTML/CSS/JavaScript与Python结合构建桌面应用成为可能,本文将系统讲解如何使用PyWebView... 目录一、技术原理与优势分析1.1 架构原理1.2 核心优势二、开发环境搭建2.1 安装依赖2.2 验

Android Mainline基础简介

《AndroidMainline基础简介》AndroidMainline是通过模块化更新Android核心组件的框架,可能提高安全性,本文给大家介绍AndroidMainline基础简介,感兴趣的朋... 目录关键要点什么是 android Mainline?Android Mainline 的工作原理关键

一文详解如何在Python中从字符串中提取部分内容

《一文详解如何在Python中从字符串中提取部分内容》:本文主要介绍如何在Python中从字符串中提取部分内容的相关资料,包括使用正则表达式、Pyparsing库、AST(抽象语法树)、字符串操作... 目录前言解决方案方法一:使用正则表达式方法二:使用 Pyparsing方法三:使用 AST方法四:使用字

数据库面试必备之MySQL中的乐观锁与悲观锁

《数据库面试必备之MySQL中的乐观锁与悲观锁》:本文主要介绍数据库面试必备之MySQL中乐观锁与悲观锁的相关资料,乐观锁适用于读多写少的场景,通过版本号检查避免冲突,而悲观锁适用于写多读少且对数... 目录一、引言二、乐观锁(一)原理(二)应用场景(三)示例代码三、悲观锁(一)原理(二)应用场景(三)示例

Python列表去重的4种核心方法与实战指南详解

《Python列表去重的4种核心方法与实战指南详解》在Python开发中,处理列表数据时经常需要去除重复元素,本文将详细介绍4种最实用的列表去重方法,有需要的小伙伴可以根据自己的需要进行选择... 目录方法1:集合(set)去重法(最快速)方法2:顺序遍历法(保持顺序)方法3:副本删除法(原地修改)方法4:

Python运行中频繁出现Restart提示的解决办法

《Python运行中频繁出现Restart提示的解决办法》在编程的世界里,遇到各种奇怪的问题是家常便饭,但是,当你的Python程序在运行过程中频繁出现“Restart”提示时,这可能不仅仅是令人头疼... 目录问题描述代码示例无限循环递归调用内存泄漏解决方案1. 检查代码逻辑无限循环递归调用内存泄漏2.

Python中判断对象是否为空的方法

《Python中判断对象是否为空的方法》在Python开发中,判断对象是否为“空”是高频操作,但看似简单的需求却暗藏玄机,从None到空容器,从零值到自定义对象的“假值”状态,不同场景下的“空”需要精... 目录一、python中的“空”值体系二、精准判定方法对比三、常见误区解析四、进阶处理技巧五、性能优化

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加

python logging模块详解及其日志定时清理方式

《pythonlogging模块详解及其日志定时清理方式》:本文主要介绍pythonlogging模块详解及其日志定时清理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录python logging模块及日志定时清理1.创建logger对象2.logging.basicCo

Python如何自动生成环境依赖包requirements

《Python如何自动生成环境依赖包requirements》:本文主要介绍Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录生成当前 python 环境 安装的所有依赖包1、命令2、常见问题只生成当前 项目 的所有依赖包1、