Ⅰ-Python入门与基本语法

本文详细介绍了Python的安装过程,包括Python和PyCharm的安装,以及Python的基本语法,如变量、注释、数据类型(动态/强类型,字符串、整数、浮点型、布尔类型)、列表、元组、集合和字典的使用。还涵盖了思维导图作为学习工具的应用。

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

1.Python介绍

Python:基于ABC语言发展而来,因为ABC语言不开放,Guido(开发者)开发Python开源。
应用领域:
                ①Web应用开发
                ②自动化运维
                ③人工智能领域
                ④网路爬虫
                ⑤科学计算
                ⑥游戏开发

1.1安装Python


去官网下载:Python:Welcome to Python

右击选择用管理员身份打开Python软件:(注意勾选"Add Python to PATH",添加ptython的环境变量)
​​​​在这里插入图片描述
然后点击"Install Now":
在这里插入图片描述
继续选择"Disable path length limit",就可以安装成功。
我们可以输入python -V命名,去CMD查看,是不是安装成功。
下面是成功的案例:
在这里插入图片描述

1.2安装PyCharm工具

PyCharm官网下载:PyCharm 社区版
这边推荐下载PyCharm 社区版,不用码就可以用,非常方便。

点击软件下载:
勾选这个是创建桌面快捷方式
在这里插入图片描述
等待下载成功
在这里插入图片描述在这里插入图片描述
这样我们就下载好了。

1.3安装环境变量,JDK

如果之前安装了JDK的朋友,我们就可以跳过这一步。
在这里插入图片描述
安装JDK,自动配置path路径。
在这里插入图片描述
显示“Done”就说明配置成功。
在这里插入图片描述
我们去环境变量查看系统变量多了什么东西。
​​​​在这里插入图片描述
可以看到,自动帮我们配置了系统环境变量。现在我们直接打开PyCharm即可
在这里插入图片描述

1.4PyCharm的使用

点击PyCharm,这里选择Don’t Serd。
在这里插入图片描述
这里需要码,分享一个很好的网站:JetBrains 产品
如果你是社区版,就不用输入,直接使用即可!
在这里插入图片描述
我们去下载一个很实用的插件“Chinese /中文语言包”。这样就自动帮我们翻译了
下载好这个插件后,我们得手动启动这个插件,然后插件会让我们重新启动
在这里插入图片描述

2.python基本语法

2.1变量

①变量名只能包含字母、数字和下划线。
	例如:可将变量命名为message_1,但不能将其命名为1_message。
②变量名不能包含空格,但可使用下划线来分隔其中的单词。
	例如:变量名greeting_message 可行,但变量名greeting message会引发错误。
③不要将Python关键字和函数名用作变量名,即不要使用Python保留用于特殊用途的单词。
④变量名应既简短又具有描述性。
	例如:name比n好,student_name比s_n好,name_length 比length_of_persons_name好。

2.2注释

#:行注释
	例如:# 这是Python中的行注释
	
''':三个单引号的块注释
	例如:	'''
					这是Python中三个单引号的块注释
			'''
""":三个双引号的块注释
	例如:	"""
					这是Python中三个双引号的块注释
			"""

2.3数据类型

python:是一门动态的强类型语言
		Python中的数据类型:str/int/float/bool
java:是一门静态的强类型语言
javascript:是一门动态的弱类型语言,运行时识别数据类型
		Java中的数据类型:String int/short/long/byte/double/float/boolean/char

①动态/静态/强类型/弱类型

在这里插入图片描述

静态类型语言(statically typed languages):类型检查发生在编译阶段(compile time)
	静态类型(static):  所有的变量类型必须被显示地声明,因为这些信息在编译阶段就被需要。
动态类型语言(dynamically typed languages)中,类型检查发生在运行阶段(run time)
	动态(Dynamic):  显示声明不被要求,因为类型赋值发生在运行阶段。
强类型中,不管在编译时还是运行时,一旦某个类型赋值给某个变量,它会持有这个类型,并且不能同其他类型在计算某个表达式时混合计算。
弱类型中,它是很容易与其他类型混合计算的。

②字符串(str)

Python中,用引号括起的都是字符串,其中的引号可以是单引号,也可以是双引号。
#单引号和双引号
temp = 'hello python'
temp = "hello python"
print(temp)
temp = 'I say "hello world"'
print(temp)
#转义符处理
temp="I say \"hello world\""
print(temp)
#通过+拼接字符串
print(temp+"...")
#使用制表符\t和换行符\n
print("I say \thello \nworld")

③整数(int)

Python中,可对整数执行加(+)减(-)乘(*)除(/)运算。
#加(+)减(-)乘(*)除(/)运算
count = 8
print(count+1)
print(count-1)
print(count/2)
print(count*2)
# 使用两个乘号表示乘方运算
print(count ** 2)  # 相当于count * count
# 符号*打印输出30print("*"*30)

④浮点型(float)

Python将带小数点的数字都称为浮点数。
salary=3000
print(salary);
不同数据类型与str拼接,需要进行类型转换处理:
print("我的工资是:"+str(salary))
# print('1'+3)       X
# print(int('1')+3)  √
# print('1'+str(3))  √
在字符串中使用整数时,需要显式地指出将这个整数用作字符串。str()
浮点型的缺陷:
a = 0.1
b = 0.2
print(b-a)  # 0.1
print(a+b)  # 0.30000000000000004
温馨提示:计算机系统底层采用二级制,而整数(1,2,3,4等)都能完美的转换成二进制,但是小数(浮点数)有可能变成无限二进制(**精度的丢失问题**)

解决方案:

数据库中使用decimal类型(字符小数,例如:'1.1111'),在Java中使用BigDecimal进行计算操作;
			格式:from decimal import Decimal
				 a = Decimal('0.1'),
				 b = Decimal('0.2')
				 print(a+b)
以最小单位存储,例如:1.236(一块二毛三分六厘)1236(以最小单位厘来存储)

⑤布尔(bool)

true表示对,false表示错。
配合运算符:`>=<===!=,and,or` 一起使用。

2.4列表

需要明确的是,Python中没有数组,但是加入了更加强大的列表。如果把数组看做是一个集装箱,那么 Python 的列表就是一个工厂的仓库。
从形式上看,列表会将所有元素都放在一对中括号`[ ]`里面,相邻元素之间用逗号`,`分隔,如下所示:
						nums=[0,1,2,3,4,5,6,7,8,9]
常规操作:
		# 1) 查看names的大小
		print(len(nums))
		# 2) 取值,从头到尾取值,索引从0开始
		print(nums[0])
		# 3) 取值,从尾到头取值,索引从-1开始
		print(nums[-1])
		# 4) 赋值
		nums[0]="zhaoliu"
		print(nums)
		nums[-2]="wahaha"
		print(nums)

①追加append:在列表末尾添加元素

		nums.append(100)
		print(nums)

②插入insert:在列表中插入元素

		nums.insert(0,666)
		print(nums)
		nums.insert(-2,777)
		print(nums)

③删除del/pop/remove

		del nums[0]
		print(nums)
		
删除(出栈方式)pop:出栈|根据索引删除
		# 默认从最后一个开始出栈
		print(nums.pop())
		# 通过指定索引下表出栈
		print(nums.pop(0))
		print(nums)
		
删除remove:根据元素删除
		# remove删除
		nums.remove(5)
		print(nums)
		# 判断元素是否存在
		print(5 in nums)
		print(5 not in nums)
方法remove()只删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要使用循环来判断是否删除了所有这样的值。

④排序

		# 临时性排序
		print(sorted(nums))
		# 永久性排序
		nums.sort()
		print(nums)

⑤反转

		nums.reverse()
		print(nums)

⑥切片

start和stop的正值代表列表下标,负值代表列表从右往左数起,倒数第几个数据。方向由step确定,step为正时,从左往右切片,step为负时,从右往左切片;start和stop的空值分别代表列表的头尾的最后一个数据,至于start和stop空值的时候代表的是列;表的头还是尾,由step的正负值决定,即由step确定列表切片的方向后决定。
		# start:起始下标
		# stop:停止下标
		# step:步长
		# start和stop的正值代表列表下标
		print(nums[::2])
		print(nums[1::2])
		print(nums[0:4:2])
		# start和stop负值代表列表从右往左数起,不包含结束位置
		print(nums[-1:-3:-1])
		# 单独一个冒号,代表从头取到尾,步长默认为1
		print(nums[:])
		# 单独两个冒号一样代表从头取到尾,步长默认为1
		print(nums[::])
		# 两个冒号后面是步长。步长为1,从左到右;步长为-1,从右到左
		print(nums[::1])
		print(nums[::-1])
		# 赋值操作
		# nums[0:4]=[]
		nums[0:4]=[1,2]
		print(nums)

2.5元组

元组(tuple)是Python中另一个重要的序列结构,和列表类似,元组也是由一系列按特定顺序排序的元素组成。
元组和列表(list)的不同之处在于:

- 列表的元素是可以更改的,包括修改元素值,删除和插入元素,所以列表是可变序列;
- 而元组一旦被创建,它的元素就不可更改了,所以元组是不可变序列。
元组也可以看做是不可变的列表,通常情况下,元组用于保存无需修改的内容。
从形式上看,元组的所有元素都放在一对小括号`( )`中,相邻元素之间用逗号`,`分隔,如下所示:
		nums=(0,1,2)
		a,b,c=nums
		print(a)
		print(b)
		print(c)
		print(len(nums))
		print(nums)

		# tuple类型一旦初始化就不能修改
		# nums[0]=5
		# print(nums)

2.6集合

Python中的集合,和数学中的集合概念一样,用来保存不重复的元素,即集合中的元素都是唯一的,互不相同。
从形式上看,和字典类似,Python 集合会将所有元素放在一对大括号 {} 中,相邻元素之间用“,”分隔,如下所示:
		# 创建一个空的set集合
		# cities = set()
		# 使用{}创建带有数据的set集合且不能重复
		cities = {'hunan', 'shanghai', 'beijing','hunan'}
		print(cities)
		# 出栈,随机
		print(cities.pop())
		# 指定删除,remove删除不存在的元素则报错
		# cities.remove("hunan")
		# 判断元素是否存在
		if "hunan" in cities:
    		cities.remove("hunan")
		# discard删除不存在的元素不报错
		cities.discard("beijing")
		# clear代表清除
		cities.clear()
		print(cities)
		# 集合运算
		a = {1, 2, 3, 4}
		b = {3, 4, 5, 6}
		# a-b的差集
		print('a-b的差集:'+str(a - b))
		# b-a的差集
		print('b-a的差集:'+str(b - a))
		# a和b的并集
		print('a | b的并集:'+str(a | b))
		# a和b的交集
		print('a & b的交集:'+str(a & b))
		# a和b的对称差集
		print('a ^ b的对称差集:'+str(a ^ b))

2.7字典

Python字典(dict)是一种无序的、可变的序列,它的元素以“键值对(key-value)”的形式存储。相对地,列表(list)和元组(tuple)都是有序的序列,它们的元素在底层是挨着存放的。
Python中,字典用放在花括号{}中的一系列键—值对表示。(JSON类似)
		person={
    		"name":"张三",
    		"age":21,
   			"salary":3000
		}
		print(person["name"])
		print(person["age"])
		print(person["salary"])
		person["score"]=90
		print(person)

思维导图

附上一张全过程的思维导图
在这里插入图片描述
私聊我给高清图。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值