Python学习 之 Python入门

Posted duncan1863

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python学习 之 Python入门相关的知识,希望对你有一定的参考价值。

第二章 Python入门

2.1 环境安装

2.1.1 下载解释器:

  • py2.7.16 (2020年官方不再维护)

  • py3.6.8 (推荐安装)

    1、下载解释器一定去官网下载,https://www.python.org

技术图片

2、选择 python3 的版本下载

技术图片

? 3、下载 python3 的64位安装包

技术图片

? 4、选择 python2 的版本下载

技术图片

? 5、下载 python2 的64位安装包

技术图片

2.1.2 安装解释器Python36

? 1、点击下载好的安装包,弹框页面中先勾选上“添加到环境变量”

技术图片

? 2、点击自定义安装

技术图片

? 3、保持默认的全部勾选,点击下一步

技术图片

? 4、勾选为所有用户安装,点击安装路径地址更改安装路径

技术图片

? 5、更改安装路径,尽量安装在根目录(D:\\Python36)

技术图片

? 6、点击安装按钮

技术图片

? 7、安装中

技术图片

? 8、安装完成

技术图片

? 9、查看环境变量,计算机 - 属性 - 高级系统设置 - 环境变量 - 系统变量 - Path

技术图片

? 因为之前第一步勾选了添加到环境变量,所以可以查看到系统变量 Path 中就显示了 python36 的安装路径。

2.1.3 检测python 3.6.8 是否安装成功

? 1、系统环境变量添加完成后就可以检测python 3.6.8 是否安装成功,点击开始 - 运行,搜索框中输入:cmd

技术图片

? 2、输入 cmd 后回车打开终端

技术图片

? 3、在打开的终端中输入 python 后回车显示下面信息就表示安装成功了。

技术图片

2.1.4 添加环境变量,以便于以后快速找到python解释器

? 如果在终端中输入 python 后回车提示:python 不是内部命令或外部命令,也不是可运行程序

技术图片

? 就代表python 安装后没有加入到环境变量,需要做以下操作:

? 计算机 - 属性 - 高级系统设置 - 环境变量 - 系统变量中双击Path,将 python36 的安装路径 D:\\Python36? 和 D:\\Python36\\Scripts?加入其中,都以英文的 “ ; ” 分隔后点击确定。

技术图片

? 最后重新打开终端,输入python就会显示python交互式提示符了。

2.1.5 python2 的安装

? 1、点击下载好的 python2 的安装包,默认选择的是为所有用户安装,直接点击下一步

技术图片

? 2、点击更改安装路径,建议安装在 D 盘根目录下(D:\\Python27)

技术图片

? 3、更改完安装路径

技术图片

? 4、安装选项页面有个添加到环境变量的选项,此处建议不选,保持默认,点击下一步

技术图片

? python27的安装方法和python36一样,安装时有个加入到环境变量的选项,如果安装时勾选了会自动添加到用户环境变量里,这样当前电脑如果更换用户后就无法使用python,这样就不方便其他用户的使用,所以安装过程中建议不选择加入到环境变量,等安装完成后手动添加环境变量到系统环境变量里面,一定不要添加到用户环境变量,这样更换用户登录后也可以方便的使用同一个python解释器了。

? 5、安装中

技术图片

? 6、安装完成

技术图片

? 7、打开终端,输入python2

技术图片

? 8、添加环境变量

? 计算机 - 属性 - 高级系统设置 - 环境变量 - 系统变量中双击Path,将 python27 的安装路径 D:\\Python27?加入其中,以英文的 “ ; ” 分隔后点击确定。

2.1.6 有关 python2 和 python3 共存的问题

? 1、注意:不管是 python3 还是 python2 ,安装后在安装路径文件夹下都会显示一个python.exe的文件!

技术图片

? 2、分别将这个文件的路径加入到系统环境变量后,在终端中输入python回车后系统因为分不清该使用 python2 还是 python3 ,因此会报错

技术图片

? 3、这时应该在添加环境变量之前,将 python2 安装路径文件夹下的 python.exe 重命名为 python2.exe 或 python27.exe, 将 python3 安装路径文件夹下的 python.exe 重命名为 python3.exe 或 python36.exe,然后分别将重命名后的文件路径加入到系统环境变量

技术图片

? 4、添加完环境变量后在原终端中继续输入python2 或 python3 还是会报错

技术图片

? 5、这时要重新打开终端,输入 python2 或 python27 就会调用 python2 的环境,输入 python3 或 python36 就会调用 python3 的环境了,只输入 python 就报错了。

技术图片

2.1.7 IDLE 集成开发环境

? 1、IDLE 简介

? IDLE是python软件包自带的集成开发环境,可以方便的创建、运行和调试python程序。 python2 或者 python3 安装完成后就会自动安装上。

? 2、如何打开 IDLE: 开始 - 运行 - 搜索框输入:idle

技术图片

? 3、点击 IDLE(Python GUI) 打开python2 的shell

技术图片

? 4、点击 IDLE(Python 3.6 64-bit) 打开python3 的shell

技术图片

? 5、启动IDLE后先看到的是python shell,可以通过它在IDLE内部执行python命令。IDLE还带有一个编辑器,用来编辑python程序(或脚本);有一个交互式解释器用来解释执行Python语句;有一个调试器来调试Python脚本。

? 下图中显示的是执行Python语句

技术图片

2.1.8 第一个脚本(一个文件)

  • 在D盘根目录下新建一个test.txt文件,打开并输入下面代码,然后关闭

    print('你好')
  • 打开电脑终端: 功能键+R 然后输入:cmd

  • 输入命令:解释器路径 脚本路径

    C:\\Users\\amssy>python36 D:\\test.txt
    你好
    #更改文件的后缀名为.txxxxx 或者 .php 都行
    C:\\Users\\amssy>python36 D:\\test.txxxxx
    你好
    #潜规则,python代码文件以 .py 后缀
    C:\\Users\\amssy>python36 D:\\test.py
    你好

2.2 编码

2.2.1 编码基础

  • ascii

    ? 一个字符占1个字节(8位)

  • unicode

    ? 一个字符占4个字节(32位),全球语言通用,现在只用到了21位,

    ? 存储的时候占用空间过大

  • utf-8 (推荐使用)

    ? 对 unicode 进行压缩,占几位就显示几位,8表示位数是8的倍数

    ? 即解决了全球语言的问题,又解决了存储时占用空间过大的问题

    ? 最少用1字节=8位,最多用4字节=32位。

    ? 中文:3字节=24位表示

  • gbk

  • gb2312

2.2.2 python编码相关

对于Python默认解释器编码:

  • py2: ascii
  • py3: utf-8

python2 中如果想要修改默认编码,则可以在文件第一行加入头文件,也就是输入下面代码,表示不再使用默认的 ASCII 编码,而指定python解释器的编码为 utf-8 编码。

# -*- coding:utf-8 -*-

注意:

? 对于操作文件时,要按照 以什么编码写入,就要用什么编码去打开。

? 编码 + 解码 要一致。

2.3 解释器

文件:a.py

#!/usr/bin/env python    # 在linux中指定解释器的路径
# -*- coding:utf-8 -*-

print("你好")

运行:解释器 文件路径

在 linux 上有一种特殊的执行方法:

  • 给文件赋予一个可执行的权限
  • ./a.py 会自动去找文件的第一行 = /usr/bin/env python a.py

2.4 输出

print(你想要输出的东西)

特殊:

  • py2: print "你好"
  • py3: print("你好")
  • python2.7 里面上面两种都支持

2.5 简单数据类型

'alex' / "李杰" / '''asdg''' / """dfsf""" ,一般称为 字符串
666 ,一般称为 数字/整型
True / False ,一般称为 布尔型
# 如:
print('你好') # 输出字符串:你好
print(你好) # 此行会报错:NameError:name '你好' is not defined
print('你"好') # 输出:你"好
print("窗前明月光,地上鞋两双") # 输出显示一行
print("""窗前明月光,
地上鞋两双""")  # 输出会换行,一般用作多行输出

print("窗前明月光,")
print("地上鞋两双") # 这两行输出也会换行,但如何是一篇文章就不可能用此方法,要用三引号

print(666) # 输出数字:666
print('666') # 输出字符串(长得像数字的字符串):666

print(True) # 输出:True
print(False) # 输出:False
  • 1、字符串(引号一定要是英文状态下的引号)
    • 单引号
    • 双引号
    • 三引号
  • 2、整型
  • 3、布尔类型

2.6 变量

# 需求:将 '钓鱼要钓刀鱼,刀鱼要到岛上钓。'打印3遍
# 普通方法:费时费力
print('钓鱼要钓刀鱼,刀鱼要到岛上钓。')
print('钓鱼要钓刀鱼,刀鱼要到岛上钓。')
print('钓鱼要钓刀鱼,刀鱼要到岛上钓。')

# 高级方法:
#     创建一个变量content,并且给变量赋值,值等于'钓鱼要钓刀鱼,刀鱼要到岛上钓。'字符串。
content = '钓鱼要钓刀鱼,刀鱼要到岛上钓。'
print(content)

content = '钓鱼要钓刀鱼,刀鱼要到岛上钓。'
content = 666
print(content) # 这里输出结果是666,因为content重新被赋值了

999 = '钓鱼要钓刀鱼,刀鱼要到岛上钓。'
999 = 666
print(content) # 执行会报错:SyntaxError:can't assign to literal
  • 变量的要求:

    • 1、变量名只能包含:字母/数字/下划线

    • 2、数字不能开头

    • 3、不能是python的关键字

      ? [‘False‘, ‘None‘, ‘True‘, ‘and‘, ‘as‘, ‘assert‘, ‘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‘]

      共 33 个关键字,除 ‘True‘、‘False‘ 和 ‘None‘ 外,其他关键字均为小写形式。

      注意: Python 是一种动态语言,根据时间在不断变化,关键字列表将来有可能会更改。

    • 4、建议:

      • 见名知意: name = ‘alex‘ age = 18
        用下划线连接(推荐使用):alex_dad = ‘李杰‘
      • 驼峰式命名(Java 里常用):AlexDad = ‘李杰‘

        ?

  • 问:为什么要有变量?

    为某个值创建一个“外号”,以后在使用的时候通过此外号就可以直接调用。

2.7 综上练习题

# 第一题
age = 18
new_age = age + 1
print(new_age)

# 第二题
name = "alex"
new_name = name + 'sb'
print(new_name)

# 第三题
age = "666"
new_age = age + "666"
print(new_age)

# 第四题
age = "666"
new_age = age + 666
print(new_age) # 运行报错:TypeError:must be str,not int

# 第五题
age = 6
new_age = age * 2
print(new_age)

# 第六题(特殊)
name = "alex"
new_name = name * 2
print(new_name)

# 第七题
age = 18
value = age >= 19  # >=大于等于
print(value)

# 第八题
_ = 9
_9 = 9
9name = 'alex'  # 报错:SyntaxError: invalid syntax
True = 9   # 报错:SyntaxError: can't assign to keyword
print = 666  # print虽然不是关键字,但是也不能作为变量名,运行会报错

2.8 输入

input('请输入你的名字:') 
# 运行时要求用户输入,用户输入后程序就结束了

user_name = input('请输入你的名字:') 
# 括号内的内容为提示语,也可以不加提示语 user_name = input()
message = user_name + "烧饼"
print(message)

注意:

  • input 输入得到的内容永远都是字符串
  • py版本区别:
    • py2:name = raw_input(‘请输入姓名:‘)
    • py3:name = input(‘请输入姓名‘)

示例:

user_name = input('请输入你的姓名:') 
password = input('请输入你的密码:') 
content = "你的用户名是:" + user_name + ";你的密码是:" + password
# content = "你的用户名是:" + "alex" + ";你的密码是:" + "123"   
print(content)

2.9 注释

? 写代码过程中,"#"及后面的内容都叫注释,代表这行代码不起作用,没有它是一样的,代码执行时跳过此行代码。

  • 单行注释: 以# 开头的内容
  • 多行注释:写在 [ """ """ 或 ‘‘‘ ‘‘‘(三引号)] 内的内容
user_name = input('请输入你的姓名:') 
password = input('请输入你的密码:') 

# 用户名和密码拼接  ——这是单行注释
content = "你的用户名是:" + user_name + ";你的密码是:" + password

#输出用户名和密码拼接的结果
print(content)


"""
写在这里的就
是多行注释
"""

? 以后代码写的多的话强烈建议写注释,注释不只是给别人看,也是给你自己看!

2.10 条件判断

? 1、初级条件语句 if...else

? “if: ...else: ...” 语句在编辑器工具pycharm中输入冒号后回车会自动缩进,一般是4个空格,在记事本或其他编辑器中没有自动缩进的按4个空格,或者按 Tab 键,空格和Tab键尽量不要混用,以免发生不知名的错误。

# 实现一个功能:让用户输入性别,如果是 男,则输出:再见;如果是 女,则输出:来啊来啊
gender = input("请输入性别:")

"""
如果是男生:打印再见
否则:打印来啊来啊
"""

if gender == "男":
    print('再见')
else:
    print('来啊来啊')

? 2、if...elif...else

# 实现一个功能:让用户输入性别,如果是 男,则输出:再见;如果是 女,则输出:聊聊啊;否则:滚
gender = input("请输入性别:")

"""
如果是男生:打印再见
如果是女生:打印聊聊啊
否则:打印滚
"""

if gender == "男":
    print('再见')
elif gender == "女":
    print('聊聊啊')
else:
    print('滚')
# 实现一个功能:让用户输入性别,如果是 男,则输出:再见;如果是 女,则输出:聊聊啊;如果是 人妖,则输出:找alex去,他也是;否则:滚
gender = input("请输入性别:")

"""
如果是男生:打印再见
如果是女生:打印聊聊啊
如果是人妖:打印找alex去,他也是
否则:打印滚
"""

if gender == "男":
    print('再见')
elif gender == "女":
    print('聊聊啊')
elif gender == "人妖":
    print('找alex去,他也是')
else:
    print('滚')
print('end') # 
gender = input("请输入性别:")
if gender == "男":
    print('再见')
elif gender == "女":
    print('聊聊啊')
elif gender == "人妖":
    print('找alex去,他也是')
else:
    print('滚')
print('end')
# 无论输入什么,最后都会打印 end

? 3、最简单

gender = input("请输入性别:") # 女
if gender == "男":
    print('再见')
# 结果不会打印

? 4、练习题

# 第一题:让用户输入一个数字,猜:如果数字 > 50,则输出:大了; 如果数字 < 50,则输出:小了。
num = input('请输入一个数字:')
number = int(num) # 因为用户输入的都是字符串,所以这里需要使用int()转换成整型才可做比较。
if number > 50:
    print('大了')
else:
    print('小了')


# 第二题:用户名密码登录
username = input('请输入用户名:')
password = input('请输入密码:')

if username == 'alex' and password == 'oldboy':
    print('欢迎登录')
else:
    print('用户名或密码错误')

2.11 内容总结

  • 计算机基础(图)
  • 解释器的安装
    • py2 & py3 共存:如找不到自己想要的环境,可以先更改可执行文件 .exe 的名称,再加入环境变量
  • 编码
    • 三种编码区别
    • 用什么保存就用什么打开,硬盘上永远保存的都是01010101
    • py2 & py3
  • 输出
  • 数据类型
    • 字符串
    • 整型
    • 布尔值
  • 变量
  • 输入
  • 注释
  • 条件语句
  • 赠送:
    • number = int(‘666‘) # 字符串转换为整型
    • name == ‘alex‘ and password == ‘123‘ # 一个 = 是赋值,两个 = 是比较
    • result = "xxx"==‘alex‘ and 213==‘123‘ # False
  • 提醒:
    • 打字慢 —— 金山打字通
    • 英文不会 —— 翻译软件及多看笔记代码
    • 错误笔记 —— 整理错误及解决方案

2.12 pycharm使用

  • pycharm 的下载和安装请自行百度

  • 使用:

    1、打开pycharm,第一次使用点击 Create New Project (创建新项目)

技术图片

? 2、创建新项目!

技术图片

? 3、新项目设置完点击创建后的提示

技术图片

? 4、在项目上创建文件

技术图片

? 5、输入文件名,刚开始为了方便查找可以使用中文,以后在开发中建议一定要使用英文

技术图片

? 6、文件中输入代码后,空白区域右键,点击 Run ‘xxx‘ 运行该文件

技术图片

? 7、运行文件结果

技术图片

? 8、调整字体大小:点击 file - settings

技术图片

? 9、其他功能:点击 file

技术图片

? 10、快速打开文件所在文件夹

技术图片

? 11、pycharm 自动生成头部代码

? File - Settings - Editor - File and Code Templates - Python Script - 输入代码 - 点击 OK

技术图片

? 12、常用快捷键

? Ctrl + D 复制选定的区域或行

? Ctrl + Y 删除选定的行

? Ctrl + / 行注释/取消注释

? Ctrl + Shift + / 块注释

以上是关于Python学习 之 Python入门的主要内容,如果未能解决你的问题,请参考以下文章

机器学习入门之python实现图片简单分类

Python爬虫入门一之综述

1.Python爬虫入门一之综述

Python学习基础之快速入门

Python学习基础之快速入门

我要学python之入门基础