Python基础——核心文章
前言
本系列博客所有内容都是【 实际操作】为主,部分内容一定要解释说明的会伴随少量的理论说明,在【 最短时间内】让大家【 掌握】真正的【 实操技能】才是实打实的【 为您创造价值】。
学习环境
系统版本:win10、win11
开发工具:PyCharm Community社区版本(我这里只做数据,不做Web)
知识点
章节号章节名章节内容第一章Python环境与语法基础PyCharm Community开发环境。
Python的数据类型、变量、运算符等内容。第二章Python逻辑控制语句if判断、while循环、for循环、break、continue第三章Python函数内置函数、随机函数、数学函数、日期函数、自定义函数第四章Python集合列表list(列表)、set(集合)、Dictionary(字典)、tuple(元组)第五章Python字符串操作字符串编码、字符串内置函数第六章Python文件IO操作异常、系统操作、File操作第七章Python面向对象OOP概述、类和实例、封装、继承和多态
目录
返回多个值的自定义函数(超好用,超方便,后期谁用谁知道,虽然是假的。。。)
字符串查找String.find(“”)或String.index(“”)两种·可以用【re】正则替换,更好用
第一章 Python环境与语法基础
知识点一、PyCharm Community开发环境
官方下载地址:【PyCharm:JetBrains为专业开发者提供的Python IDE】
点击下载后,选择【Community】社区版本
有的时候比较慢,需要等待一会会出现下载栏。
这里还有一个温馨提示,没必要。
下载成功
安装步骤
都是点击【下一步/Next】
为了后续操作方便,需要勾选几个内容
安装过程时间较长
可以稍后重启。安装完毕
创建【python】项目
修改文字大小
点击【File】->【Settings】,搜索【font】修改一下文字显示:
创建【HelloWorld.py】文件
输入以下编码:
print("HelloWorld")
调试模式
进入调试模式可以看到整个执行过程。
以上我们就拥有了【Python】开发的环境了,后面开始正式课程内容。
知识点二、Python数据类型
2.x与3.x中文编码的区别
如果是2.x的python版本在编码中有中文则需要添加以下声明:
#!/usr/bin/python
-*- coding: UTF-8 -*-
Python3.x源码默认使用utf-8,可以正常解析中文,无需指定 UTF-8 编码。
Python关键字(也叫保留字·不能用作变量名)
import keyword
遍历python关键字列表
print(keyword.kwlist)
其实python的关键字不多,以下是遍历结果:
[‘False’, ‘None’, ‘True’, ‘and’, ‘as’, ‘assert’, ‘async’, ‘await’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘nonlocal’, ‘not’, ‘or’, ‘pass’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]
打包语法
pyinstaller -F -p D:\save\Exe\studys\Python\exe\Lib -i D:\save\myclass\Python\core\pythonProject\python.ico demo1.py –noconsole
Python变量名
- 变量名可以包括字母、数字、下划线,但是【 数字不能做为开头】。
- 系统关键字不能做变量名使用,我们上面有遍历关键字。
- 除了下划线【 _ 】这个,其它符号不能做为变量名使用。
- Python的变量名是区分大小写的
Python注释
Python注释有三种方法分别是三种符号:
1、# 单个
2、”’ ”’ 三个,两对作为声明作用域,用于做变量、函数或者类的注释说明
3、””” “””三个,两对作为声明作用域,用于做变量、函数或者类的注释说明
代码示例
我是单行注释
print("Hello World")
aa = 777
'''
变量、函数或者类的注释说明·鼠标放在变量aa上查看效果
'''
bb = 89757
"""
变量、函数或者类的注释说明·鼠标放在变量aa上查看效果
"""
注释效果:
基本数据类型
在Python3中有六种基本数据类型,分别是:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
在这里我们先讲解前两种,在后面的章节中我们在对另外四种进行深入讲解。下面我们逐一去了解Number数字类型与String字符串类型。
数字类型(Number)
Python里有【整数】、【浮点数】和【复数】四种数据类型,咱们逐一说明。
【整数】
int在Python3中是没有限制大小的,只要内存够,理论上无限大小。
int_len = 777777777777777777777777777777777777777777777777777777777777777
'''
理论上只要内存够,可以无现长
'''
print(int_len)
print(type(int_len))
【浮点数】
也就是小数,例如:【3.14】就是一个浮点数。也肯能是科学计数法。
浮点数基础使用:
float_type = 3.14159265358E5
'''
科学计数法的【E+数字】代表10*N次方·以上【E5】是代表10的五次方。
注:次幂=次方。用词不一样,数学含义一样。
'''
print("科学计数法:", float_type)
print("科学计数法:", type(float_type))
以下是浮点数的浮点数【15/16】尾数处理的情况1:
float_type_15 = 3.000000000000001
float_type_16 = 3.0000000000000001
'''
小数点后15位,当有16位的时候会出现自动舍去
'''
print("15位:", float_type_15)
print("15位:", type(float_type_15))
print("16位:", float_type_16)
print("16位:", type(float_type_16))
以下是浮点数的浮点数【15/16】尾数处理的情况2:
float_type_15 = 3.999999999999999
float_type_16 = 3.9999999999999999
'''
小数点后15位,当有16位的时候会出现自动舍去
'''
print("15位:", float_type_15)
print("15位:", type(float_type_15))
print("16位:", float_type_16)
print("16位:", type(float_type_16))
【复数】
复数由实部与虚部构成,Python中使用【j】/【J】作为后缀。
complex_num = 2j
'''
复数由实部与虚部构成,Python中使用【j】/【J】作为后缀
'''
print("复数:", complex_num)
print("复数:", type(complex_num))
根据i的平方等于-1,故而结果应该是-1j
i = 1j
complex_num = i ** 2
'''
根据i的平方等于-1,故而结果应该是-1j
'''
print("i²=-1:", complex_num)
print("复数:", type(complex_num))
布尔类型
True与False,布尔类型只有对错两个值。
bool_type = True
'''
只有True与False两个值
'''
print(type(bool_type))
字符串类型
- Python 中单引号【’】和双引号【”】使用完全相同
- 使用三引号【”’】或【”””】可以指定一个多行字符串
- 转义【\】
单行与都行字符串定义
当没有被赋值变量的时候,无论是三个单引号,还是三个双引号都是注释。
str_info = '四季之·春'
'''
字符串定义
'''
str_three_char = '''
字符串里面的所有东西都会被赋值到变量中。
当没有被赋值变量的时候,无论是三个单引号,还是三个双引号都是注释。
'''
print("单行字符串:", str_info)
print("多行字符串:", str_three_char)
Python字符串拼接
符号 描述%c格式化字符及其ASCII码%s格式化字符串%d格式化整数%f格式化浮点数字,可指定小数点后的精度
我们主要也就使用%s、%d、%f,其实还有一些符号,但是用的非常少。接下来我们拼接一个字符串:
str_info = str.format("春江%s秋月夜,会须一饮%d杯。" % ('\t花朝\t', 300))
print(str_info)
保留2位小数
王姑娘的成绩从去年的72分提升到了今年的85分,请计算王姑娘成绩提升的百分点,并用字符串格式化显示出 'xx.x%'
,只保留小数点后2位:
s1 = 72
s2 = 85
r = (1 - (s1 / s2))
print(f"王姑娘是成绩提升的百分比是:%.2f " % r)
Python数据类型匹配
在后面面向对象的操作过程中有的时候需要根据传递的参数对象进行判断是否进行下一步操作,我们在这里用到了【isinstance】函数,这个函数可以判断变量是否属于某类型数据。
x = 666
x是int类型数据,我们使用isinstance来判断是否属于int这个类型即可。
isf = isinstance(x, int)
print(isf)
isf = isinstance(x, str)
print(isf)
转义符号
str_char = '字符串\n中\r可以穿插\t转义字符,\b'
'''
转义符号是对应ascii码表的
\n 全拼newline的首字母表示换行
\t -->tab的首字母表示制表符
\r -->return的首字母表示返回
\b -->backspace的首字母表示退一个格
'字符串\n【换行】中\r【回车】可以穿插\t【制表符,大空格】转义字符,\b【退格,不显示,】'
'''
print(str_char)
可以看到实际效果:
取消转义符号
str_char = r'字符串\n中\r可以穿插\t转义字符,\b'
字符串索引
字符串的【索引】下标是从左侧【0】开始,如果是右侧就是【-1】。字符串的知识点很多,我们会在后面的章节详细述说。
str_char = "最靓、最厉害的仔"
'''
字符串的【索引】下标是从左侧【0】开始,如果是右侧就是【-1】。
'''
print(str_char[0])
print(str_char[3:6])
print(str_char[-1])
取消print()换行
x = "幸福安康"
'''
去掉了换行,那么输出的时候就会横向输出。
'''
print(x, end=" ")
print(x, end=" ")
Python中分号【;】的作用
Python中的【;】用于区分前后语句,如果每行一句则不需要,如果一行内写多条语句,那么就需要使用【;】作为分隔符来明确对应的语句含义了。但是不建议这么使用,使语句理解起来麻烦的多。
字符与整数类型数据转换
数字类型转换字符类型·可以理解成ascii码转字符
print(chr(22909))
字符转ascii码
print(ord('好'))
知识点三、运算符
这里为了让大家先入门,我就不对一些有难度的符号进行讲解了,再后面的文章有会有精讲,这里先让大家入门。
符号备注:
运算符支持的符号有:+、-、、/、%(取模|求余)、//(整除)、*(次幂),与我们学习中常用的符号类型有点区别,我们常用的【x】乘号、【×】乘号、【÷】除号在程序运算中是无法使用的,这点我们要切忌。
四则运算
【//】相当于java中的整数除法,在明确自身是int的类型的时候不会进行浮点数处理。
x = 7
y = 5
print("加法计算:", x + y)
print("减法计算:", x - y)
print("乘法计算:", x * y)
print("除法计算:", x / y, "整数运算,无浮点数")
print("整除计算:", x // y, "会出现浮点数计算")
print("取模计算:", x % y)
print("幂运算:", x ** y, "次幂运算、x的y次幂(次方)")
取模(取余)运算
num = 12345
print("万位:", num // 10000)
print("千位:", num // 1000 % 10)
print("百位:", num // 100 % 10)
print("十位:", num // 10 % 10)
print("个位:", num % 10)
可以在结果中看到是没有浮点数运算的,说明是正确的操作,但是如果使用的是【/】就会出现浮点数的问题。
eval函数
计算字符串运算结果
print(eval("5+1+6*5+2+6/2+25-2"))
这种运算非常方便,我们使用这个函数就能写出一个小应用,例如输入字符串的运算直接出结果:
输入运算字符串
calc = str(input("请输入运算公式:"))
calc = calc.replace("×", "*").replace("÷", "/")
(873×477-198)÷(476×874+661169)
需要将以上的特殊符号【×】与【÷】替换成【*】与【/】
(873*477-198)/(476*874+661169)
eval计算
print("eval函数计算结果:", eval(calc))
直接计算
print("直接计算", (873*477-198)/(476*874+661169))
我做了对照实验,说明eval函数计算的没有任何问题,所以我们接下来导出我们的程序。
程序源码:
import re
import os
while True:
try:
os.system("title python计算器【计算基础的四则运算】")
# 输入运算字符串
calc = str(input("请输入运算公式:"))
info = r"[+]|[-]|[*]|[/]|[×]|[÷]|[x]|[X]"
te = re.search(info, calc)
if te == None:
print("请输入正确的运算公式")
os.system("cls")
calc = calc.replace("×", "*").replace("x", "*").replace("X", "*").replace("÷", "/")
# eval计算:(873×477-198)÷(476×874+661169)
print(calc, "=", eval(calc))
print("-----------------------------------" * 2)
except :
print("*******请输入正确的表达式*******")
程序已经打包好,回头我会统一发对照组应用列表。
这里正则如果自己编写可能会出现【nothing to repeat at position 0(解决方案)_红目香薰的博客-CSDN博客】这个异常,我在文章有具体的说明,可以参考并解决。
Python比较运算符
比较运算符就是我们常说的:大于号、小于号啥的,符号有:
、>=、
Original: https://blog.csdn.net/feng8403000/article/details/127700961
Author: 红目香薰
Title: Python基础(适合初学-完整教程-学习时间一周左右-节约您的时间)
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/667683/
转载文章受原作者版权保护。转载请注明原作者出处!