【Python从入门到精通】第一阶段

news2025/1/9 16:30:28

文章目录

  • 前言
  • python的起源
  • 打印hello world
  • 注释
  • 变量
    • 变量基本概念
    • 类型
    • 类型转换
    • 运算符
  • 字符串拓展
    • 字符串的三种定义方法
    • 字符串拼接
    • 字符串格式化
  • 数据输入input
  • 比较
    • 布尔类型和比较运算符
    • if判断
    • if else
    • if elif else
    • 嵌套
  • 循环
    • while循环
    • while循环嵌套
    • for循环
    • range()的使用
  • 函数的使用
    • 函数的定义
    • 函数参数
    • 函数的返回值
    • 函数返回值之None
    • 多返回值
    • 函数作为函数参数
  • 文件操作


前言

python可以干什么:

  1. Web开发
  2. 数据科学——包括机器学习、数据分析和数据可视化
  3. 脚本编写

所以python是很强大的。
我们这节博客是python基础内容的第一节,后面我也会继续更新python的课程。
对C/C++/Qt感兴趣的同学也可以点击的我的主页进行查看。
C语言
C++
Qt


提示:以下是本篇文章正文内容,下面案例可供参考

python的起源

Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。 [1] Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言, [2] 随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。 [3]
Python解释器易于扩展,可以使用C语言或C++(或者其他可以通过C调用的语言)扩展新的功能和数据类型。 [4] Python也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器码。

打印hello world

使用print()即可打印字符串.

print("hello world");
print('python');

注意:
1、在python中可以用双引号/单引号来表示一串字符串
2、在python中使用print后会自动换行,如果想主动换行,可以使用"\n"

注释

在python中的注释分为几种:
1、单行注释。 使用’#'号
2、多行注释。使用''''''六个单引号

#我是单行注释
"""
我
是
多
行
注
释
"""

注释是不会被编译的。

变量

变量基本概念

变量是一个可以变的量,可能前一秒是a,下一秒就变成了b。

定义变量:变量名 = 变量值

name = 'CSDN'
age = 18

在上面,name为变量名,‘CSDN’为变量值。

打印变量的值:
print(内容1,内容2,…)
中间需要逗号隔开。

name = 'Name'
print('My name is ',name)

在变量中可以进行运算,如下:

money = 100
print(money)#100
money = money-10
print(money)#90

类型

  1. str:字符串
  2. int:整形—无小数
  3. flaot:浮点型—有小数
  4. bool:布尔型
str:  'hello world'    "hello python"
int:   11     99
float:   12.12    99.99
bool    True   False

注意:bool类型的变量值只能为True/False。True为真,False为假。

判断变量的类型:type(变量名)

name = 'CSDN'
age = 10
print("name type:",type(name),"age type:",type(age))

输出:name type: <class ‘str’> age type: <class ‘int’>.我们现在看单引号里面的就可以。str,int。

类型转换

将x转换为intint(x)
将x转换为floatfloat(x)
将x转换为strstr(x)
print(type('10'),type(int('10')))

输出:<class ‘str’> <class ‘int’>

运算符

基础运算符


  • / 除
    % 取模 - 返回除法的余数
    ** 幂 - 返回x的y次幂
    // 取整除 - 返回商的整数部分(向下取整)

/与//的区别:
/会算到小数点后面。
//只算到个位。

赋值运算符
=:把右边的东西,赋值到左边。

复合运算符
= 简单的赋值运算符 c = a + b 将 a + b 的运算结果赋值为 c
+= 加法赋值运算符 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

字符串拓展

字符串的三种定义方法

  1. 单引号法
  2. 双引号法
  3. 三引号法
str1 = 'str'
str2 = "str2"
str3 = """str3"""

引号的嵌套:
在双引号内加单引号:

print("我在\'csdn\'等你")

只要在引号前面加 \ 就可以

字符串拼接

1、使用+号

print('我在CSDN'+'等你')

不同的类型需要转换后才能使用。

字符串格式化

1、‘字符串%s’%需要格式化的字符串

print('我在%s'%'CSDN')

2、f+字符串{变量名}字符串
{}为占位符。

name = "CSDN"
print('hello {name}')

数据输入input

使用input()即可输入,他需要一个变量接收值。

1、无提示:

name = input()
print(name)

2、有提示:

name = input("input your name")
print(name)

比较

布尔类型和比较运算符

判断在生活中有很多,没有他我们很多功能都无法实现:
密码判断。
等待…

布尔类型表示的是现实中的生活逻辑,即真/假
True表示真---->1
Flase表示假---->0
比较运算符
== 等于 - 比较对象是否相等 (a == b) 返回 False。
!= 不等于 - 比较两个对象是否不相等 (a != b) 返回 True。
> 大于 - 返回x是否大于y (a > b) 返回 False。
< 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量 True 和 False 等价。 (a < b) 返回 True。
>= 大于等于 - 返回x是否大于等于y。 (a >= b) 返回 False。
<= 小于等于 - 返回x是否小于等于y。 (a <= b) 返回 True。

print(10=10)
print(10>5)
print(10>=9)
print(10>=10)
print(10!=99)

输出:
False
True
True
True
True

if判断

if判断的含义:相当于“如果…,那么”
if判断格式if 条件: 执行的语句
注意,在python中是以缩进来表示属于哪个地方的。

age = 18
if age >= 18:
	print('已经成年')

多条件判断:

关键字作用
and
or
  1. and—>条件必须全部为True,结果才为True。反之为False
  2. or —>条件有一个为True,结果就为True。
age = 25
if age>=15 and age <=40:
	print('是青年人')

age2 = 3
money = 0
if age2 <= 5 or money >= 50:
	print('可以进游乐园')

if else

理解:在这里插入图片描述

注意:如果if的条件为False,则执行else。如果if条件为True,则执行if。else不执行。

age = 10
if age >= 18:
	print("已经成年")
else:
	print("未成年")

打印:未成年

if elif else

理解:
在这里插入图片描述
使用:
**
if 条件:
动作
elif 条件:
动作

else:
动作
**

mouth = input('请输入现在的月份')
if mouth >= 3 and mouth <= 5:
	print('春')
elif mouth >= 6 and mouth <= 8:
	print('夏')
elif mouth >= 9 and mouth <= 11:
	print('春')
elif mouth >= 12 and mouth <= 2:
	print('冬')
else:
	print('请输入正确的月份')

嵌套

age = 3
VIP = 5
if age <=3:
	print('小于3岁')
	if VIP>=5:
		print('VIP等级大于5'else:
		print('VIP等级小于5'else:
	print('大于3岁')

循环

while循环

循环的理解:
在这里插入图片描述
while循环的语法:while 条件:动作
示例:

i = 0
while i<100:
	print('小美,我喜欢你')
	i+=1

打印100个小美,我喜欢你。

案例:0+1+2+…+100

sum = 0
i = 0
while i<=100:
	sum+=i
	i+=1

print(sum)

打印5050.

while循环嵌套

i = 0
while i<100:
	j = 0
	while j<10:
		print('送{j}支玫瑰花')
		j+=1
	print('小美,我喜欢你')
	i+=1

print('表白了{i}天,表白成功')

for循环

for循环是一种轮询机制,是对一批内容逐个处理。
在这里插入图片描述
语法:for 临时变量 in 要处理的数据:动作
把要处理的数据一个一个放到临时变量里面。

临时变量是什么:
只在这个作用域有效,出了就没有了。
循环的作用域就是本循环的缩进所在的地方

name = 'CSDN'
for x in name:
	print(x)

打印:
C
S
D
N

range()的使用

语法:range(num)
从0开始,到num的一个序列,不包括num。
序列是什么:
就是一段连续的空间。
在这里插入图片描述
range(5)表示的是[0,1,2,3,4]

其他的range操作

操作含义
range(num1,num2)从num1开始取,不包括num2
range(num1,num2,step)从num1开始取,不包括num2,并且每两个数相差step步(默认为1)

步step的含义:
和我们平时上楼梯差不多,一次几个台阶。
在这里插入图片描述

关于for循环的range:

for x in range(5):
	print(x)

打印的结果为:
0
1
2
3
4

如果我们需要指定循环次数,我们就可以这样指定了。

函数的使用

函数的定义

函数:组织好的,可重复使用的,用来实现特定功能的代码段。
在python中,使用def 函数名(函数参数): 函数体 返回值来定义函数。

在下面我们不需要管函数参数,返回值

def myfun():
	print('my fun')

使用函数:

myfun()

函数参数

函数参数的功能:在函数计算时,接收外表的数据。
示例如下:

def add(x,y):
	print('result:'+str(x+y))

add(10,20)#输出结果为30

函数调用:函数名(参数1,参数2....参数n)
注意,参数和参数之间需要用逗号隔开。def 函数名(参数1,参数2,...参数n)

函数的返回值

在python中使用return 返回值返回出去。
需要注意的是:执行这条语句后,函数就退出了。不在执行下面的了,如下代码:

def r():
	语句1
	语句2
	return 1
	语句3
	语句4

在上面的代码中,只执行语句1,2,而不执行3,4.

示例如下:

def add(x,y):
	return x+y

print(str(add(10,20)))

打印的值为30.

函数返回值之None

None表示空的,没有的。可以用作函数没有返回值中。

使用场景:

def say_hi():
	print('hi')
	return None

say_hi()

在判断中,他相当于Flase.
如下:

def say_hi():
	print('hi')
	return None

if say_hi():
	print("True")
else:
	print("False")

结果打印为False。

多返回值

形式:return 1,2,......n
如何进行接收:a1,a2....,an = 函数名()

def num():
	return 1,2,3

x,y,z = num()#x = 1,y = 2,z = 3

接收到的值是按顺序的。

函数作为函数参数

def compute(x,y):
	return x+y

def func(Compute):
	print(str(Compute(1,2)))

func(compute)

打印3

文件操作

使用open()函数打开文件,open(文件路径,打开方式,编码格式)
打开方式有:

  1. r模式:只读
  2. w模式:只写,而且为擦除写
  3. a模式:接着文件后面写

编码格式使用:encoding = "格式"指定

open("D:/demo.txt","r",encoding = "UTF-8")

需要注意的是:文件路径一定要有,要不然会报错.

使用read()读取文件内容。
注意:模式要为r/a模式。

f.read()#读全部
f.read(n)#读指定字节数
f.readLine()#读一行,直到有\n

循环读文件:

for line in open("D:/demo.txt","r",encoding = "UTF-8"):
	print(line)

使用write()写文件:
注意:模式要为w/a模式。

write():写一个字符串。
flush():清空缓冲区。

f.write("hello world")
f.flush()

关闭文件:close().
不关闭文件的后果:会导致无法打开文件

自动关闭文件:
with open语法.

with open("demo.txt","r",encoding = "UTF-8") as f:
    f.readline()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/179754.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

3小时精通opencv(五) 利用TrackBar进行颜色检测

3小时精通opencv(五) 利用TrackBar进行颜色检测 参考视频资源:3h精通Opencv-Python 本章内容介绍如何利用TrackBar调节色域, 手动提取到我们需要的颜色 文章目录3小时精通opencv(五) 利用TrackBar进行颜色检测创建Trackbar色彩检测创建Trackbar 在opencv中使用createTrackbar函…

C语言:数组

往期文章 C语言&#xff1a;初识C语言C语言&#xff1a;分支语句和循环语句C语言&#xff1a;函数 目录往期文章前言1. 一维数组的创建和初始化1.1 数组的创建1.2 数组的初始化2. 一维数组的使用3. 一维数组在内存中的存储4. 二维数组的创建和初始化4.1 二维数组的创建4.2 二维…

大数据技术架构(组件)7——Hive:Filter PushDown Cases And Outer Join Behavior

1.2、Filter PushDown Cases And Outer Join Behavior前提:关闭优化器set hive.auto.convertjoinfalse; set hive.cbo.enablefalse;Inner Join:1、Join On中的谓词: 左表下推、右表下推2、Where谓词:左表下推、右表下推-- 第一种情况: join on 谓词 selectt1.user_id,t2.user_i…

C++函数定义和调用介绍

C函数定义和调用介绍 函数的意义&#xff1a;利用率高&#xff0c;可读性强&#xff0c;利于移植。 一个C程序中主函数有且只有一个&#xff0c;是程序的入口&#xff0c;而函数&#xff08;或称子函数&#xff09;可以有很多。 每个 C 程序都至少有一个函数&#xff0c;即主…

2021 XV6 8:locks

实验有两个任务&#xff0c;都是为了减少锁的竞争从而提高运行效率。Memory allocator一开始我们是有个双向链表用来存储空闲的内存块&#xff0c;如果很多个进程要竞争这一个链表&#xff0c;就会把效率降低很多。所以我们把链表拆成每个CPU一个&#xff0c;在申请内存的时候就…

栈和队列的应用

一、栈在括号匹配中的应用 数据结构之栈_迷茫中的小伙的博客-CSDN博客_数据结构之栈栈括号和队列的应用 二、栈在表达式求值中的应用 中缀转 ->后缀 &#xff1a; 左右先 (左边能先算,先算左边,因为这样可以保证确定性,即计算机运算的方式) 后缀转->中缀 &#xff1a…

王者荣耀入门技能树-解答

前言 前段时间写了一篇关于王者荣耀入门技能树的习题&#xff0c;今天来给大家解答一下。 职业 以下哪个不属于王者荣耀中的职业&#xff1a; 射手法师辅助亚瑟 这道题选&#xff1a;亚瑟 王者荣耀中有6大职业分类&#xff0c;分别是&#xff1a;坦克、战士、刺客、法师、…

如何好好说话-第12章 理清楚问题就是答案

生活中该不该积极主动与别人展开社交活动&#xff1f;有些时候社交活动并不开心&#xff0c;仅仅只是无聊的闲才。但他确实能拉拢人际关系&#xff0c;帮我们获得近身套路。而且有一种观点认为不善于社交的人是不成功的。注意以上说的这些都是偏见。当我们站在一个更高的维度认…

Jetpack架构组件库:Hilt

Hilt Hilt 是基于 Dagger2 的依赖注入框架&#xff0c;Google团队将其专门为Android开发打造了一种纯注解的使用方式&#xff0c;相比 Dagger2 而言使用起来更加简单。 依赖注入框架的主要作用就是控制反转&#xff08;IOC, Inversion of Control&#xff09;, 那么什么是控制…

表格相关的一些标签

<!DOCTYPE html> <html> <head> <meta charset"UTF-8"> <title>表格相关的标一些签</title> </head> <body> <!-- 需求 1&#xff1a;做一个四行&#xff0c;三…

Golang进阶

"白昼会边长&#xff0c;照亮心脏,让万物生长。"一、Golang进阶我们对golang的语法进行了一定的了解后&#xff0c;也算是入门了。本节的进阶篇围绕三个方向展开,Goroutine 、 Channel 、Sync。如何理解并行与并发&#xff1f;并行是指“并排行走”或“同时实行或实施…

用数组实现链表、栈和队列

目录前言一、用数组实现链表1.1 单链表1.2 双链表二、用数组实现栈三、用数组实现队列前言 众所周知&#xff0c;链表可以用结构体和指针来实现&#xff0c;而栈和队列可以直接调用STL&#xff0c;那为什么还要费尽心思用数组来实现这三种数据结构呢&#xff1f; 首先&#x…

好的质量+数量 = 健康的创作者生态

缘起 CSDN 每天都有近万名创作者发表各种内容&#xff0c; 其中博客就有一万篇左右。 这个数量是非常可喜的&#xff0c;这也是 CSDN 的产品、研发运营小伙伴、和各位博主持续工作的结果。 衡量一个 IT 内容平台&#xff0c;除了数量之外&#xff0c;还有另外一些因素&#xf…

Linux——动态库

目录 制作并发布动态库 使用动态库 使用动态库程序运行时的错误 制作并发布动态库 静态库的代码在链接的时候会被拷贝进对应的可执行程序内部&#xff0c;动态库则不需要拷贝。 动态库在形成目标文件时&#xff0c;需要加一个选项 -fPIC&#xff1a;形成一个与位置无关的二…

Yocto常用术语

Yocto常用术语 Yocto是一套开源、专为嵌入式定制的编译系统&#xff0c;它提供了toolset和开发环境&#xff0c;开发人员可以利用Yocto定制基于Linux的系统。Yocto官网介绍了其常用术语&#xff0c;官网链接Yocto Project Terms&#xff0c;了解这些术语可以加深对Yocto的认识…

第五章 高级数据管理

在第4章&#xff0c;我们审视了R中基本的数据集处理方法&#xff0c;本章我们将关注一些高级话题。本章分为三个基本部分。在第一部分中&#xff0c;我们将快速浏览R中的多种数学、统计和字符处理函数。为了让这一部分的内容相互关联&#xff0c;我们先引入一个能够使用这些函数…

低功耗广域网LPWAN 8大关键技术对比

物联网被认为是继计算机、互联网之后&#xff0c;世界信息产业发展的第三次浪潮&#xff0c;它的出现将大大改变人们现有的生活环境和习惯。智能家居、工业数据采集等场景通常采用的是短距离通信技术&#xff0c;但对于广范围、远距离的连接&#xff0c;远距离通信技术不可或缺…

分享146个ASP源码,总有一款适合您

ASP源码 分享146个ASP源码&#xff0c;总有一款适合您 下面是文件的名字&#xff0c;我放了一些图片&#xff0c;文章里不是所有的图主要是放不下...&#xff0c; 146个ASP源码下载链接&#xff1a;https://pan.baidu.com/s/1HG8AMPldOPHcEmMsGnVwMA?pwdg97k 提取码&#x…

矩阵的运算、运算规则及C语言实现

在人工智能运算和原理的过程中,我们需要了解非常多的数学知识,但是大学时候学的东西已经忘的差不多了,这里我把矩阵的一系列概念总结并复习一下,以便于大家在学习AI的时候要明白很多数学计算的物理意义,当年在学习线性代数的时候,我们不一定明白这些计算的意义,现在要和…

【图卷积网络】02-谱域图卷积介绍

注&#xff1a;本文为第2章谱域图卷积介绍视频笔记&#xff0c;仅供个人学习使用 目录1、图卷积简介1.1 图卷积网络的迅猛发展1.2 回顾&#xff0c;经典卷积神经网络已在多个领域取得成功1.3 两大类数据1.4 经典卷积神经网络的局限&#xff1a;无法处理图数据结构1.5 将卷积扩展…