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学习笔记--Django入门四 管理站点--二
接上一节 python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...
- Python学习day09 - Python进阶(3)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习day05 - Python基础(3) 格式化输出和基本运算符
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- python学习路线--从入门到入土
入门技术博客 进阶自己挑选 入门基础 Python入门相对容易又可以干很多事(网站,运维,数据,爬虫等),是一门方便的工具语言.2016年TIOBE排名显示Python已经名列第四,成为脚本语言之首. ...
- python学习——简介和入门
一.Python简介: Python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为AB ...
- python学习笔记--Django入门0 安装dangjo
经过这几天的折腾,经历了Django的各种报错,翻译的内容虽然不错,但是与实际的版本有差别,会出现各种奇葩的错误.现在终于找到了解决方法:查看英文原版内容:http://djangobook.com/ ...
- python学习笔记-python程序运行
小白初学python,写下自己的一些想法.大神请忽略. 安装python编辑器,并配置环境(见http://www.cnblogs.com/lynn-li/p/5885001.html中 python ...
- python学习: 优秀Python学习资源收集汇总--转
Python是一种面向对象.直译式计算机程序设计语言.它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块.与Scheme.Ruby.Perl ...
- Python学习笔记—Python基础1 介绍、发展史、安装、基本语法
第一周学习笔记: 一.Python介绍 1.Python的创始人为吉多·范罗苏姆.1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言 ...
- Python学习之Python简介
Python简介 Python的由来 Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象.解释型计算机程序设计语言,它是吉多·范罗苏姆(Guide van ...
随机推荐
- NOIP2018提高/普及成绩
明天就要出了,不忍看到自己爆零,现在很慌. 大家都考的如何呢?欢迎留言自己的分数或预估分数.
- Spring_简单入门(学习笔记1)
Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架. 具体介绍参考 一:IoC(Inversion of Control)控制反转,将创建对象实例反转给spri ...
- C#3.0新增功能10 表达式树 03 支持表达式树的框架类型
连载目录 [已更新最新开发文章,点击查看详细] 存在可与表达式树配合使用的 .NET Core framework 中的类的大型列表. 可以在 System.Linq.Expressions 查 ...
- sqlserver 2008 无法使用特殊主体‘sa’,错误15405
今天莫名其妙的遇到一个问题,还原了几个数据库到新的服务器上,突然发现sa用户对某几个数据库没有权限(用户映射): 我手工勾选相应数据库的db_owner权限之后,报错:无法使用特殊主体'sa',错误1 ...
- C#中unit
整理的百度百科的一些关于UNIT的资料 中文名UINT 外文名typedef unsigned short UIN 性 质 32位无符号整数 应 用 是unsigned int派生出来的 ...
- 《VR入门系列教程》之14---面向大众的Unity3D
大众化的游戏引擎--Unity3D 并不是所有VR应用都是游戏,然而现在做VR开发的几乎都会用专业游戏引擎来做,因为游戏引擎既满足了一个引擎的要求又可以方便地制作出高品质的VR应用.一个游戏引 ...
- Java emoji持久化mysql
好久没有更新博客了,今天和大家分享一个关于emoji表情持久化问题,相信做web开发的都遇到过这样的问题,因为我们知道mysql的utf-8字符集保存不了保存不了表情字符,这是为什么呢?因为普通的字符 ...
- 快速清理maven仓库中下载错误的文件
有时候使用pom文件下载依赖文件的时候突然网络异常,可能会出现依赖文件出现破损,导致怎么都不能使用,也没有重新下载. 之前解决办法是找到出现破损的文件并删除,让其重新下载,但是这样效率很低,也很难找到 ...
- 终极CRUD-2-用lombok提高开发效率
目录 1 lom介绍与基本使用 2 lombok 注意点 2.1 lombok自动生成方法可以混合自己写的方法 2.2 尽量不要使用@Data 2.3 属性不要使用基本类型 2.4 小心@ToStri ...
- SQL Server 插入数据时自增长列如何指定数值
SQL Server 表在导入数据时,有时需要将自增长列指定数值,来保证导入前后的数据完全一致,如何实现? SQL Server 提供了方法: SET IDENTITY_INSERT,允许将显式值插入 ...