美文网首页工作生活
Python 简介和入门

Python 简介和入门

作者: Alexander_Zz | 来源:发表于2019-07-01 01:33 被阅读0次

一、Python 简介

1.1 下载地址

https://www.python.org/downloads/

1.2 简介

Python 是一种计算机程序设计语言是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。
Python 的创始人为荷兰人吉多·范罗苏姆(Guido van Rossum)。1989 年圣诞节期间,在阿姆斯特丹,Guido 为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为 ABC 语言的一种继承。之所以选中 Python(大蟒蛇的意思)作为该编程语言的名字,是取自英国 20 世纪 70 年代首播的电视喜剧《蒙提.派森干的飞行马戏团》(Monty Python's Flying Circus)
摘自——百度百科

1.3 Python 排行和使用场景

TIOBE 6 月编程语言排行榜 更新已发布,排名前三的依然是:Java, C, Python。


image.png

Python 可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用 Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、美团等。互联网公司广泛使用 Python 来做的事一般有:自动化运维、自动化测试、大数据分析、爬虫、Web 等。

1.4 Python 种类

Jyhton Python 的 Java 实现,Jython会将 Python 代码动态编译成 Java 字节码,然后在 JVM 上运行转换后的程序
jpython 在执行的时候先经过词法分析,语法分析,然后由解释器编译成字节码,再有 java 编译成机器码,最后再有 CPU 读取机器码执行,而 pypy 则有解释器直接一步到位编译成机器码,因此 pypy 理论上速度更快。
Cpython Python 的官方版本,使用 C 语言实现,使用最为广泛,CPython 实现会将源文件(py 文件)转换成字节码文件(pyc 文件),然后运行在 Python 虚拟机上。
IronPython Python 的 C# 实现,并且它将 Python 代码编译成 C# 中间代码(与Jython类似)
PyPy Python实现的Python
其他实现方式:RubyPython、Brython、Pyobjc

1.5 Python 安装
  • Linux 安装
    linux 默认自带 python,但是 centos 和 redhat 的版本普遍比官方版本低很多,因此可以另外安装一个版本使用,步骤如下
# 先安装 gcc 编译器
~]# yum install gcc -y

# 解压 Python 安装包并编译安装,注意 P 大写
~]# tar xvf Python-3.6.8.tgz
~]# cd Python-3.6.8
Python-3.6.8]# ./configure
Python-3.6.8]# make && make install

# 查看版本
Python-3.6.8]# python36
Python 3.6.8 (default, Jul  1 2019, 06:56:19) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

# 测试 Python
Python-3.6.8]# python3
Python 3.6.8 (default, Jul  1 2019, 06:56:19) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print ('hello world')
hello world

二、Python 编码

2.1 ASCII

American Standard Code for Information Interchange,美国标准信息交换代码。是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即 2**8 = 256,所以,ASCII 码最多只能表示 256 个符号,且不支持中文,图标如下


image.png
2.2 Unicode

统一码、万国码、单一码。是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2 个字节),即:2**16 = 65536

2.3 UTF-8

UTF-8 是对 Unicode 编码的压缩和优化,他不再使用最少使用 2 个字节,而是将所有的字符和符号进行分类:ascii 码中的内容用 1 个字节保存,欧洲的字符用 2 个字节保存,东亚的字符用 3 个字节保存…

2.4 编码间的转换

将 utf-8 或 gbk 格式的转换为 unicode,将 unicode 转换为其他编码称为 encode
decode 的作用是将其他编码的字符串转换成 unicode 编码
encode 的作用是将 unicode 编码转换成其他编码的字符串


image.png

三、注释

3.1 单行注释
# 注释内容
print ('hello') # 第一个注释
单行注释.png
3.2 夸多行注释

''' 注释内容 ''' 或 """ 注释内容 """,在 Python 中 '单引号' 和 "双引号" 没有区别

"""第一
行注释"""
print ('hello')
多行注释.png

四、pyc 文件

4.1 pyc 文件

执行 Python 代码时,如果导入了其他的模块即其他的 xx.py 文件,那么,执行过程中会自动生成一个与其同名的和 py 文件同名的 .pyc 文件,该文件就是 Python 解释器编译之后产生的字节码,代码经过编译可以产生字节码;字节码通过反编译也可以得到代码,即使删除该 py 文件之后 python 程序依然可以运行,因为 python 或优先读取 pyc 文件,但是假如手动修改了 pyc 文件,则 python 会重新读取 py 文件并重新生成新的 pyc 文件,因为 python 会内部判断,因此不需要也不能手动更改 pyc 文件


五、Python 变量

变量名称代表了内存中的某一段空间,空间里面保存的是变量的对象,变量可以是任何数值,但是变量的名称只能是数字、大小写字母和下划线,而且变量名的第一个字符不能是数字开头的,变量名不要使用和系统已经使用的特殊关键字
不能作为的名字的关键字如下:
[ 'and' , 'as' , 'assert' , 'break' , 'class' , 'continue' , 'def' , 'del' , 'elif' , 'else' , 'except' , 'exec' , 'finally' , 'for' , 'from' , 'global' , 'if' , 'import' , 'in' , 'is' , 'lambda' , 'not' , 'or' , 'pass' , 'print' , 'raise' , 'return' , 'try' , 'while' , 'with' , 'yield' ]

5.1 声明变量

name = "rookie"
print (name)

5.2 变量赋值

a = "jerry"
b = "tom"
其结果是在内存开启了两个地址空间,a 和 b 分别表示这两个地址空间的内容

image.png
a = "jerry"
b = a
会开启一个地址空间,两个变量名将指向同一个内存地址进行调用
image.png

六、获取用户输入

6.1 取值

使用 raw_input ( python 2 版本 ) 的方法获取用户输入的字符串信息给一个变量,然后把变量打印出来,还有另外一种方法 input 只能获取数值

#/usr/bin/env  python
# -*- coding:utf-8 -*-
name = raw_input("Please input yout name:")  # 在 python 2 中 raw_input 获取的为字串,inpu 获取为数值
print "your name is:",name

在 python 3 中,没有了 raw_input,只有 input 方法,默然获取到的为字串,如果要获取数值,可以加上

int(input("请输入你想要输入的数字或内容:"))
6.2 输入密码

如果想要不可见,需要利用getpass 模块中的 getpass方法

#!/usr/local/python3
#
import getpass
password = getpass.getpass('请输入你的密码')

print (password)

注意:密码是隐藏的,而且运行时连输入密码的提示框都没有,可以在调试模式下看到详细内容
Warning: Password input may be echoed.
请输入你的密码asd
asd

七、Python 流程控制和缩进

7.1 if else 语句流程控制

进行判断用户输入,非 A 即 B,python 对缩进要求很严格,必须严格按照 4 个空格的方式进行排序,而且 if 下一级的代码必须与 if 保持 4 个空格换行间距,即父代码要与子代码严格区分,如果缩进不符合要求会报缩进错误: IndentationError: unindent does not match any outer indentation level

#!/usr/local/bin/python3
#
import getpass
name = input('请输入你的用户名: ')
passwd = getpass.getpass('请输入你的密码: ')
if name == 'rookie' and passwd == '123asd':
    print ('欢迎,rookie')
else:
    print ('你的用户名和密码错误')
7.2 if elif elif elif ... else

有N个判断条件,一次匹配一个条件

#!/usr/local/python3
#
name = input('请输入你的用户名: ')
if name == 'rookie':
    print ('rookie')
elif name == 'jerry':
    print ('jerry')
elif name == 'tom':
    print ('tom')
else:
    print ('用户名不正确')

相关文章

网友评论

    本文标题:Python 简介和入门

    本文链接:https://www.haomeiwen.com/subject/jujicctx.html