Python优点:
- 简单————Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。
- 易学————就如同你即将看到的一样,Python极其容易上手。前面已经提到了,Python有极其简单的语法。
- 免费、开源————Python是FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。这是为什么Python如此优秀的原因之一——它是由一群希望看到一个更加优秀的Python的人创造并经常改进着的。
- 高层语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
- 可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC、Symbian以及Google基于linux开发的Android平台!
- 解释性————这一点需要一些解释。一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上,它就可以工作了,这也使得你的Python程序更加易于移植。
- 面向对象————Python既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。
- 可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
- 丰富的库————Python标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。
- 规范的代码————Python采用强制缩进的方式使得代码具有极佳的可读性。
Python3安装:
Linux系统:
1、安装python3。
# yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
# cd /usr/bin/
# mv python python.bak
# wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tar.xz
# tar -xvJf Python-3.6.4.tar.xz
# cd Python-3.6.4
# ./configure prefix=/usr/local/python3
# make && make install
# ln -s /usr/local/python3/bin/python3 /usr/bin/python
# python -V
2、因为 yum 需要 python2 支持。编辑 /usr/bin/yum 文件和 /usr/libexec/urlgrabber-ext-down 文件。把#! /usr/bin/python修改为#! /usr/bin/python2。
#! /usr/bin/python 》》》》 #! /usr/bin/python2
Linux中ipython安装:
1、安装。5.5.0版本支持python2.7。pip失败就多试几次。
# yum install -y epel-release
# yum install -y python-pip
# yum install -y python-devel
# pip install ipython==5.5.0
2、进入和退出。
# ipython
In [1]: exit
Windows系统:
1、安装就一直点下一步。官网地址: https://www.python.org/downloads/
Windows10系统中python3环境变量设置:
在path里点新建,然后把Python3目录和Python3目录下的Scripts目录放上去。比如 C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32 和 C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\Scripts
windows系统安装PyCharm:
1、一直下一步。破解找百度。官网:http://www.jetbrains.com/pycharm/
PyCharm使用技巧:
常用快捷键(不同情况效果不同):
Ctrl + c # 复制
Ctrl + x # 删除光标所在行(非选中情况下)
Ctrl + v # 粘贴
Ctrl + d # 直接粘贴光标所在行内容(非选中)
Ctrl + shif + n # 查找项目文件
Ctrl + shif + f # 查找项目关键字
Ctrl + 鼠标左键 # 查看源代码
Ctrl + alt + 方向左/右键 注意和系统屏幕设置的快捷键冲突 # 光标上一次(下一次)位置的切换。
Ctrl + a; ctrl + alt + l # 自动对其代码
Alt + enter # 快速修正;在模块名前则导入模块,没有则可选安装
Ctrl + / # 注释(取消注释)光标所在行(选中多行则注释多行);
Tab shift +tab # 加4格(回删4格)。基本不用
Ctrl + r # 替换
Pycharm的调试模式:
断点: 就是程序执行到这个地方停下来
F7: Step Into 相当于eclipse的f5就是 进入到代码
F8:Step Over 相当于eclipse的f6 跳到下一步
F9: resume programe 恢复程序或者执行到下一个断点
python代码模板设置:
1、点击:File->setting->Editot->Code Style->File and Code Templates ->Python Script
2、模板代码。
#! /usr/bin/env python
# -*- coding: utf-8 -*-
"""
-------------------------------------------------
Time :${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
Author : Long
File Name :${NAME}.py
-------------------------------------------------
"""
Pycharm设置python传参数:
import sys
print("程序名字是:{0}".format(sys.argv[0]))
print("参数1 = {0}".format(sys.argv[1]))
print("参数2 = {0}".format(sys.argv[2]))
print("Hello World")
Python基础:
注释:
- 单行注释:
# 我是单行注释 print("Hello World")
- 多行注释:
""" 我是多行注释 print("Hello World") """
数据类型:
i = 100
s = "d"
b = True
f = 1.1
l = [1,2,3]
t = (1,2,3)
d = {"A":1, "B":2}
print("我是整数。{}".format(type(i)))
print("我是字符串。{}".format(type(s)))
print("我是布尔型。{}".format(type(b)))
print("我是浮点数。{}".format(type(f)))
print("我是列表。{}".format(type(l)))
print("我是元祖。{}".format(type(t)))
print("我是字典。{}".format(type(d)))
运算符:
算数运算符:
运算符 | 描述 | 实例 |
+ | 加 | 两个对象相加 a + b 输出结果 30 |
- | 减 | 得到负数或是一个数减去另一个数 a - b 输出结果 -10 |
* | 乘 | 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200 |
/ | 除 | x除以y b / a 输出结果 2 |
// | 取整除 | 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 |
% | 取余 | 返回除法的余数 b % a 输出结果 0 |
** | 幂 | 返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000 |
赋值运算符:
运算符 | 描述 | 实例 |
= | 赋值运算符 | 把=号右边的结果给左边的变量 num=1+2*3 结果num的值为7 |
复合运算符:
运算符 | 描述 | 实例 |
---|---|---|
+= | 加法赋值运算符 | c += a 等效于 c = c + a |
-= | 减法赋值运算符 | c -= a 等效于 c = c - a |
*= | 乘法赋值运算符 | c *= a 等效于 c = c * a |
/= | 除法赋值运算符 | c /= a 等效于 c = c / a |
%= | 取模赋值运算符 | c %= a 等效于 c = c % a |
**= | 幂赋值运算符 | c **= a 等效于 c = c ** a |
//= | 取整除赋值运算符 | c //= a 等效于 c = c // a |
比较(关系)运算符:
运算符 | 描述 | 示例 |
---|---|---|
== | 检查两个操作数的值是否相等,如果是则条件变为真。 | 如a=3,b=3则(a == b) 为 true. |
!= | 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 | 如a=1,b=3则(a != b) 为 true. |
<> | 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 | 如a=1,b=3则(a <> b) 为 true。这个类似于 != 运算符 |
> | 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 | 如a=7,b=3则(a > b) 为 true. |
< | 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 | 如a=7,b=3则(a < b) 为 false. |
>= | 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 | 如a=3,b=3则(a >= b) 为 true. |
<= | 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 | 如a=3,b=3则(a <= b) 为 true. |
逻辑运算符:
运算符 | 逻辑表达式 | 描述 | 实例 |
---|---|---|---|
and | x and y | 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 | (a and b) 返回 20。 |
or | x or y | 布尔"或" - 如果 x 是 True,它返回 True,否则它返回 y 的计算值。 | (a or b) 返回 10。 |
not | not x | 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 | not(a and b) 返回 False |