一篇让你直接入门的 Python 教程
2020-05-16 08:47 zouhui 阅读(55) 评论(0) 编辑 收藏 举报阅读本文需要7.3分钟
目录
(1)Python是什么?
Python属性
(2)获取Python-一个Prelim
选择Python版本
(3)如何获得Python?
(4)确认Python安装
PythonShell
(5)语言基础
变量
内置数据类型
评论意见
需要帮忙吗?
(6)用Python编写代码
Redux
闲散
代码编辑器
(7)选择编码编辑器
在代码编辑器中应该寻找什么?
我应该用哪个编辑?
(8)数到10
让我们制定一个计划(伪代码!)
(9)错误和例外
语法错误
例外
语义错误
(10)Python的功能--包/模块
PIP
(11)测试你的知识
(1)Python是什么?
Python,以英国喜剧团体MontyPython的名字命名,是一种解释性、交互性、面向对象的编程语言.它的灵活性使它能够做许多事情,无论大小。Python可以用来编写简单的程序,但它也拥有创建复杂的、大规模的企业解决方案所需的全部功能。Python的一些使用方式包括:
- 桌面图形应用程序开发,包括游戏;
- 对数据进行数学和科学分析;
- 网络与互联网的发展。
Python在计算机编程领域随处可见。例如,Python在地球上一些最大的网站上使用,举几个例子:Reddit,Dropbox和YouTube 流行的PythonWeb框架Django同时支持Instagram和Pinterest。卢卡斯电影公司的获奖视觉特效公司,工业光和魔术,都是使用Python。
很容易忘记Python有多么强大,因为它非常容易学习。
Python属性
Python是…
强输出。它强制数据类型,因此您不能连接字符串和整数
动态, 隐式输出。因此,不必显式声明变量数据类型。数据类型在运行时强制执行。
大小写敏感 :例如, token 和 TOKEN 是两个不同的变量。
面向对象. 一切都是物体.
(2)安装Python
Python是免费的开源在Linux、Mac、Windows和其他各种平台上工作的软件(总共21个)。它是预装在Mac和大多数Linux发行版上的;但是,可能需要下载最新版本
要检查您的版本,请打开终端并运行以下命令:
python -V
选择Python版本
对于新的和经验丰富的程序员来说,在决定Python 2或3之间时都会感到困惑。幸运的是,两者之间的语法差异很小,您可以在您的计算机上运行这两个版本。
目前,Python-2.x和3.x有两个主要版本。
哪个版本适合你?那就看你了。老实说,在这个早期阶段,两者之间几乎没有什么不同,所以这两种选择都足够了。另外,一旦你学会了一个,学习另一个并不困难。
一般来说,如果您刚刚开始学习Python,那么就使用3.6x,因为它是一个更好的版本,因为它添加了一些特性以及大量的bug修复和改进。然而,2.7x拥有更多来自第三方库的支持。
(3)如何安装Python
无论您的操作系统是什么,您都可以从官网进行下载
操作系统专用指令:
Mac :我强烈建议使用自制安装和管理不同版本的Python。
linux :同样,Python包含在各种版本的Linux中,请确保使用包管理器升级到最新版本。
Windows :直接下载安装 安装教程:Python安装和使用
(4)确认Python安装
让我们快速检查一下是否正确安装了Python。
PythonShell
打开PythonInteractiveShell:
Mac:打开终端并运行:
Python
或python3
,取决于您的安装。linux:打开终端并运行:
Python
Windows:如果只安装了一个版本的Python,只需运行
Python
。如果同时安装了Python2.7和Python3,请运行Python
用于Python 2.7和/或py -3
用于Python 3。
交互式PythonShell应该打开,您的命令提示符或终端窗口应该类似于以下内容:
Python 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 24 2018, 00:16:47) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
最好运行您的第一行代码…
Python 2:
>>> print "Python is fun!"
Python 3:
>>> print("Python is fun!")
如果您正在运行Python2.x,则
你应该看到:
Python is fun!
仅此而已:您刚刚编写了您的第一个Python程序!每次输入一行时,Python都会立即执行语句,显示引号之间的值。
一旦完成,您可以使用exit()
离开PythonShell。或:
Mac和Linux用户: Ctrl+D
然后按Enter
Windows用户: Ctrl+D
然后按Enter
(5)语言基础
在本节中,我们将介绍Python编码原语--变量、内置数据类型、注释、语法和语义。
变量
变量是容器数据。声明它们的语法是:variable_name = variable_value
。尽管您可以任意命名变量(除了几个变量)保留关键词),你应使用有直觉意义的命名方案。变量名应就分配给它的值提供一些指示。
例如,许多新的编程器使用简单的变量名,如x
和y
。不要这样做。相反,如果你有两个数字-比如说1
和52
-使用变量名称num1
和num2
而不是x
和y
命名规则以及含义:
我终于把Python中下划线的含义弄清楚了(憋了很久了)
内置数据类型
Python许多内置数据类型。例如数字(整数、浮点数、复数)、字符串、列表、元组和字典。
可以使用以下方法对每一项操作进行操作:
- 操作者
- 功能
- 数据类型方法
一定要和我一起把每个例子都打出来。
数字
数字可以是整数、浮点数、布尔值或复数。前三项是最重要的:
整数是整数-
1
,2
,22
,476
,-99999
浮标有小数点-
1.0
,2.22
,22.098
,476.1
,-99999.9
布尔人
True
或False
(或1
或0
)。它们代表的数据只能是一件或另一件事。
操纵数
它们是加法(或级联)和减法,就像在小学学到的一样。
>>> 2 + 3
5
>>> num1 = 10
>>> num2 = 9.99
>>> num3 = num1 + num2
>>> num3
19.990000000000002
>>> 8 - 5
3
>>> 2 * 6
12
>>> 12 / 3
4.0
>>> 7 % 3
1
>>> 3 ** 2 # 上升到幂
9
让我们看看比较,这是计算布尔值-例如True
或False
(或1
或0
).
>>> 2 < 5
True
>>> 4 > 10
False
>>> 3 >= 3
True
>>>
>>> 5 == 6
False
>>> 6 != 9
True
功能
Python为您提供了许多内置的功能用来操纵整数。请注意:这些功能可用于任何数据类型。Python标准库中也有许多可用的模块,例如math
。要使用与这些模块相关的函数,首先必须导入该模块。稍后再说这个。现在,让我们看几个内置函数的例子。
float()
-给定一个整数,此函数将返回一个浮点数。
>>> float(9)
9.0
>>> float(-99999)
-99999.0
int()
-给定一个浮点数,这个函数返回一个整数。此函数不会将输入(上限)舍入到最近的整数--因此10.6的输入返回10,而不是11。类似地,3.25返回3。
>>> int(10.6)
10
>>> int(3.25)
3
数据类型方法
除了功能,还有一些数据类型方法与每种类型的数字相关联。
float.is_integer()
-测试浮子是否是有限的。
>>> (10.0).is_integer()
True
>>> (10.1).is_integer()
False
字符串是用单引号或双引号声明的文本行:
>>> simple_string = "hey!"
>>> simple_string
'hey!'
>>> "hello world!"
'hello world!'
>>> escaped = 'can\'t'
>>> escaped
"can't"
>>> not_escaped = "can't"
>>> not_escaped
"can't"
操纵字符串 详解
就像数字一样,你可以字符串连接:
>>> "happy" + " " + "birthday"
'happy birthday'
>>> "my name is " + "john"
'my name is john'
功能
我们来看看几个功能用于字符串操作:
len()
-给定一个字符串,此函数将返回它的长度。
>>> len(name_string)
15
slice()
-给定起始值和停止值,可以访问一组字符或单个字符。
>>> print("Hello"[2])
l
>>> print("Hello"[3])
l
>>> print("Hello"[0])
H
>>> print("Hello"[0:2])
He
数据类型方法
虽然我们只涉及几个数据类型的方法,但是一定要完整的了解。
string.capitalize()
-返回第一个字母大写的字符串。
>>> lower_case_string = "michael"
>>> lower_case_string.capitalize()
'Michael'
>>> ("empire").capitalize()
'Empire'
string.format()
-您可以轻松地将值格式化为字符串。
>>> name = "John Doe"
>>> greeting = "My name is {}".format(name)
>>> greeting
'My name is John Doe'
>>>
string.strip()
-返回带前导空格和尾随空格的字符串。
>>> are_you_happy = " Yes "
>>> are_you_happy.strip()
'Yes'
列表 详解
列表(在几乎所有其他编程语言中称为数组)将各种类型的数据组合在一起。
create_a_list = []
numbers_list = [1, 2, 3]
strings_list = ["spam", "eggs", "cheese"]
mixed_list = ["Hello", [1, 2, 3], False]
正如您在上面看到的,列表可能包含任何数据类型,包括其他列表或根本不包含任何数据类型。您可以访问列表的部分,就像索引字符串一样。语法相同:
>>> create_a_list = []
>>> create_a_list
[]
>>> numbers_list = [1, 2, 3, 200]
>>> numbers_list
[1, 2, 3, 200]
>>> strings_list = ["batman", "superman", "iron man"]
>>> strings_list
['batman', 'superman', 'iron man']
>>> mixed_list = ["Hello World", [4, 5, 6], False]
>>> mixed_list
['Hello World', [4, 5, 6], False]
您可以从列表的开头或结尾访问列表中的元素:
>>> numbers_list[0]
1
>>> numbers_list[0:1]
[1]
>>> numbers_list[0:2]
[1, 2]
看看如何通过访问元素创建一个新列表:
>>>
>>> numbers_list = [1, 2, 3, 200]
>>> new_list = numbers_list[0:3]
>>> new_list
[1, 2, 3]
负索引从上一项开始向后计算:
>>> strings_list = ["batman", "superman", "iron man"]
>>> strings_list[-1]
'iron man'
如果将列表嵌套在另一个列表中,则可以使用多个索引访问内部列表
>>> mixed_list = ["Hello World", [4, 5, 6], False]
>>> mixed_list[1][2]
6
操纵列表
列表可以连在一起:
>>> fruits = ["apples", "grapes", "oranges"]
>>> veggies = ["corn", "kale", "mushrooms"]
>>> grocery_list = fruits + veggies
>>> grocery_list
['apples', 'grapes', 'oranges', 'corn', 'kale', 'mushrooms']
功能
通常,您可以将列表看作字符串--只有每一块数据都是一个元素。那么,您在字符串上使用的相同函数可以用于列表。
len()
-给定一个列表,此函数将返回其长度。
>>> numbers_list = [1, 2, 3, 200]
>>> len(numbers_list)
4
slice()
-给定一个开始值和停止值,您可以访问一组元素。
>>>
>>> hello = ["H", "e", "l", "l", "o"]
>>> hello[2]
'l'
>>> hello[3]
'l'
>>> hello[0]
'H'
>>> hello[0:2]
['H', 'e']
数据类型方法
看看其他列表方法。
list.append()
-用于将项目添加到列表末尾
>>> fruits = ["apples", "grapes", "oranges"]
>>> fruits.append("blueberries")
>>> fruits
['apples', 'grapes', 'oranges', 'blueberries']
list.sort()
-对这份清单进行排序
>>> fruits.sort()
>>> fruits
['apples', 'blueberries', 'grapes', 'oranges']
list.pop()
-给定索引值,从列表中删除元素
>>> numbers_list = [1, 2, 3, 200]
>>> numbers_list.pop(2)
3
>>> numbers_list
[1, 2, 200]
元组 详解
元组类似于列表,但它们是不可变的--这意味着它们在创建后不能更改。
my_tuple = ("Michael", "Herman", 31, "Software Developer")
就像列表一样,您也可以使用索引访问不同的元素:
>>> my_tuple = ("Michael", "Herman", 31, "Software Developer")
>>> my_tuple[1]
'Herman'
元组通常用于字典键,因为它们是不可变的。
操纵元组
您可以添加两个元组:
>>> first_tuple = (1, 2)
>>> second_tuple = (3, 4)
>>> third_tuple = first_tuple + second_tuple
>>> third_tuple
(1, 2, 3, 4)
功能
list()
-用于将元组转换为列表
>>> first_tuple = (1, 2)
>>> list(first_tuple)
[1, 2]
如何将列表转换为元组
数据类型方法
因为元组是不可变的,所以许多列表方法不要用元组。
>>> first_tuple = (1, 2)
>>> first_tuple.append(3)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'append'
>>> first_tuple.pop(1)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'pop'
>>> first_tuple.sort()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'sort'
>>> first_tuple.reverse()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'reverse'
字典 详解
字典是使用包含键/值对的哈希表实现的关联数组(对象)的一种类型。
my_dict = {"Key 1": "Value 1", "name": "michael herman", "pi": 3.14}
可以使用以下语法返回键的值:
>>> my_dict = {"Key 1": "Value 1", "name": "michael herman", "pi": 3.14}
>>> my_dict["name"]
'michael herman'
>>> my_dict["Key 1"]
'Value 1'
(6)用Python编写代码
在Python中有三种基本的编码方法。我们已经使用了其中之一--交互式PythonShell
代码编辑器
最好的方法是使用实际的编码编辑器。有些人更喜欢 IDE,但是一个简单得多的代码编辑器对于学习来说要好得多。
为什么?当你在学习一些新的东西时,你想尽可能多地剥离复杂的层次。简化事情。通过在混合环境中添加一个复杂的IDE(您将不得不学习如何操作),您只是添加了越来越多的层,使得学习Python的任务更加困难。
(7)选择编码编辑器
Python程序的基本形式是将文本(代码)保存在带有.py文件扩展名。Python代码可以用像记事本这样的基本代码编写--但是没有理由让自己经历这样的磨难,因为有更好的选择可供选择。在它的核心部分,代码编辑器应该提供一些特性来帮助程序员创建程序(在我们的例子中,Python脚本和模块)。在大多数情况下,代码编辑器允许用户自定义程序本身,以满足您的需要和样式。
在代码编辑器中应该寻找什么?
- 易用性
- 语法高亮
- 自动压痕
- 条形视图
- 线路编号
- 能够自定义编辑器的外观和感觉
- 外接程序的可用性
请看以下示例:
因此,代码在编辑器中更容易阅读,还识别了三个简单的错误,其中一个是显示停止。
(8)数到10
准备好开始一个基本的例子了吗?!
如果你是编程新手,你可能不会。充分理解代码,但重要的是这些概念。Python被设计成非常容易阅读,这个例子演示了这个原则。我们将修复上面被破坏的代码,并再添加一个代码块来强调代码块和缩进的概念。
许多程序员在最初处理问题时会不知所措。一个有效的方法来帮助解决问题,无论大小,是逻辑上把问题分成几个部分。
例如,让我们编写一个计算从1到10的基本程序。每次计数递增时,我们都想显示一个新的数字,为了帮助实现代码块的概念,我们将展示在我们到达10之后会发生什么。帮助开发工作流的一种方法是使用伪代码。
让我们制定一个计划(伪代码!)
不要复制和粘贴,无论它是多么诱人。这样做会妨碍学习。
Python 2.7:
# Python 2.7
count = 1
# Code block 1
while count < 11:
print count
count = count + 1
# Code block 2
if count == 11:
print 'Counting complete.'
Python 3:
# Python 3
count = 1
# Code block 1
while count < 11:
print(count)
count = count + 1
# Code block 2
if count == 11:
print('Counting complete.')
注意,每个示例的第一行都有一个#
(散列字符),后面是空格,然后是解释。
最后,在执行代码时,Python会忽略注释。
你有没有注意到这些例子同时使用了=
,双倍==
?这可能会让人困惑。
- 表达
,count = 1
将1的值赋值给名为=
count
. 在条件中
,if count == 11:
比较==
带着count
,返回布尔值。11
或True
False
将文件保存为数到您创建的文件夹中,然后退出编辑器。打开终端或命令提示符,进入到您创建的文件夹。
现在运行代码:python count_ten.py
你可能需要替换
python
带着python3
或py -3
取决于你的设置。
输出应该如下所示:
恭喜你!你刚刚写了你的第一个程序。
(9)错误和例外
语法错误
我们已经看到了这个错误--不正确的缩进。语法错误将阻止程序的执行。在本例中,if
语句缺少一个冒号以结束该语句。Python非常有助于指出错误:
>>>
>>> if x < 9
File "<stdin>", line 1
if x < 9
^
SyntaxError: invalid syntax
例外
程序执行过程中会出现异常错误。Python有许多内置的例外。例如:
>>> 12/0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ZeroDivisionError: integer division or modulo by zero
语义错误
语义错误是由于逻辑中的一个或多个问题而产生的错误。
这些错误可能更复杂,因为没有生成错误。代码运行,生成意外和或不能正确的输出,或没有输出。
(10)Python的功能--包/模块
Python最大的优点之一是有大量可用的模块,它们都内置在Python核心和第三方包/库-用来扩展语言。这些模块可能非常有用。一些使用较多的内置Python模块包括:
数学
:C标准库中的数学函数(您已经看到了这个)随机
*伪随机数发生器日期时间
*用于操纵日期和时间Re
*用于使用正则表达式
例如,这里我们import math
使用pi
, sqrt
和pow
:
警告::不要将您的Python文件命名为类似模块的文件。math.py或random.py。这将导致冲突,导致代码中的意外行为。
PIP
管理Python的第三方包/模块的最佳方法是PIP。新的编码器在执行某些示例代码时经常会看到以下错误:ImportError: No module named MODULE_XXXX
.
这些模块需要使用Pip手动安装。在Python 3中,pip,调用PIP 3。
(11)测试你的知识
- Python是一种强大的、动态类型的语言,这意味着什么?
- 如何访问PythonShell?
- 如何声明变量?
- 变量名和变量值之间有什么区别?
- Python的内置数据类型是什么?
- 整数和浮点数有什么区别?
- 什么是布尔值?
- 是什么
%
- 列表和元组有什么区别?
- 什么是字典?
- 为什么要在代码中使用注释?
- 测试
help() 功能
float
到dir()
功能None
。它代表什么?属性检查变量或值的数据类型,
type()
功能。
打开文本编辑器并创建一个名为exercise.py。复制并粘贴以下代码到文件中:
##########################################################################
## Modify the variables so that all of the statements evaluate to True. ##
##########################################################################
var1 =
var6 =
var2 =
var3 =
var4 =
var5 =
############################################
## Don't edit anything below this comment ##
############################################
# integers
print(type(var1) is int)
print(type(var6) is float)
print(var1 < 35)
print(var1 <= var6)
# strings
print(type(var2) is str)
print(var2[5] == 'n' and var2[0] == "p")
# lists
print(type(var3) is list)
print(len(var3) == 5)
# tuples
print(type(var4) is tuple)
print(var4[2] == "Hello, Python!")
# dictionaries
print(type(var5) is dict)
print("happy" in var5)
print(7 in var5.values())
print(var5.get("egg") == "salad")
print(len(var5) == 3)
var5["tuna"] = "fish"
print(len(var5) == 3)
按照说明完成代码。完成后,从终端运行代码,使用python exercise.py
命令。
岁月有你 惜惜相处
----end----
推荐阅读:
浅谈如何自动化生成测试脚本...
有没有好到简历模版可以参考一下
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2019-05-16 软件测试之自动化测试
2019-05-16 软件测试之性能测试