01--python 基础 (一) nWQ1LXUh

一,python介绍


python的出生与应用

       python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。  

(龟叔:2005年加入谷歌至2012年,2013年加入Dropbox直到现在,依然掌握着Python发展的核心方向,被称为仁慈的独裁者)。

Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。

目前Python主要应用领域:

云计算: 云计算最火的语言, 典型应用OpenStack
WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django
科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas
系统运维: 运维人员必备语言
金融:**量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测

python语言的划分

编译型:将你的代码一次性全部编译成二进制,然后在运行。
缺点:开发效率低,不能跨平台。
优点:执行效率高。
代表:c

解释型:当程序开始运行时,将代码一行一行的解释成二进制,执行。
缺点:执行效率低。
优点:开发效率高,可以跨品台。
代表:python

python常用的种类

CPython

   CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。当我们从Python官方网站下载并安装好Python 3.6后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。

Jython

Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

PyPy

  PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。

 绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。

二、python


指定python解释器

#!/usr/bin/env python
# -*- coding: utf-8 -*-

print "你好,世界"

注释

   当行注释:# 被注释内容
   多行注释:'''被注释内容''',或者"""被注释内容"""

变量

变量是由数字字母下划线任意组合。
变量不能是数字开头。
变量不能是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']

变量要具有可描述性。

       `name,age,fdasgfdas` 

变量不能使用中文。

变量不能过长。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
AgeOfOldboy = 56
NumberOfStudents = 80
#下划线
age_of_oldboy = 56
number_of_students = 80

age1 = 6
age2 = age1
age3 = age2
age2 = 13
print(age1, age2, age3)  # 6,13,6

常量

一直不变的量。π,新中国成立 1949101
约定俗成全部大写的变量为常量。放到文件最上面。

基础数据类型

1. 整数类型(int)

>>> a= 2**64
>>> type(a)  #type()是查看数据类型的方法
<type 'long'>
>>> b = 2**60
>>> type(b)
<type 'int'>

2. 字符串类型(str)

在Python中,加了引号的字符都被认为是字符串!

>>> name = "liu" #双引号
>>> age = "22"       #只要加引号就是字符串
>>> age2 = 22          #int
>>> 
>>> msg = '''My name is liu, I am 22 years old!'''  #3个引号也可以
>>> 
>>> hometown = 'ShanDong'   #单引号也可以

那单引号、双引号、多引号有什么区别呢? 让我大声告诉你,单双引号木有任何区别,只有下面这种情况 你需要考虑单双的配合

msg = “My name is liu , I’m 22 years old!”

多引号什么作用呢?作用就是多行字符串必须用多引号

msg = '''
今天我想写首小诗,
歌颂我的同桌,
你看他那乌黑的短发,
好像一只炸毛鸡。
'''
print(msg)

字符串拼接

数字可以进行加减乘除等运算,字符串呢?也能?what ?是的,但只能进行”相加”和”相乘”运算。

>>> name
'Alex Li'
>>> age
'22'
>>> 
>>> name + age  #相加其实就是简单拼接
'Alex Li22'
>>> 
>>> name * 10 #相乘其实就是复制自己多少次,再拼接在一起
'Alex LiAlex LiAlex LiAlex LiAlex LiAlex LiAlex LiAlex LiAlex LiAlex Li'

3. 布尔值(True, Falsa)

布尔类型很简单,就两个值 ,True(真)(1),False(假)(0), 主要用记逻辑判断

>>> a=3
>>> b=5
>>> 
>>> a > b #不成立就是False,即假
False
>>> 
>>> a < b #成立就是True, 即真
True

4.格式化输出 (%) 站位符 (s:字符 | d :数字)

input 出来的数据类型全部是字符串。

name = input('请输入您的姓名:')
sex = input('请输入您的性别:')
print('我的名字是' + name,'我的性别是' + sex)

msg =''' ------------ info of Alex Li -----------
Name  : Alex Li
Age   : 56
job   : Teacher
Hobbie: laddy_boy
------------- end -----------------
'''

str —–> int str全部由数字组成 ‘12345’

int ——> str str(int)

第一种表现形式:

name = input('请输入你的名字:')
age = input('请输入你的年龄:')
job = input('请输入你的工作:')
hobby = input('请输入你的爱好:')
msg1 = ''' ------------ info of %s -----------
Name  : %s
Age   : %d
job   : %s
Hobbie: %s
------------- end -----------------
''' % (name,name,int(age),job,hobby)
print(msg1)

第二种表现方式:

 dic = {'name':'老男孩','age':45,'job':'Teacher','hobby':'吹'}
 msg1 = ''' ------------ info of %(name)s -----------
 Name  : %(name)s
 Age   : %(age)d
 job   : %(job)s
 Hobbie: %(hobby)s
 ------------- end -----------------
 ''' % dic
 print(msg1)
 msg2 = '我叫%s,今年%s,学习进度5%%' % ('太白',23)
 print(msg2)

基本运算符

运算符

   运算按种类可分为算数运算、比较运算、逻辑运算、赋值运算、成员运算、身份运算、位运算

算数运算

比较运算

比较运算

比较运算

赋值运算

赋值运算

逻辑运算

() > not > and > or
逻辑运算

前后都是比较运算

print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1)  # True
print(1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)  # False

前后都是数字

‘x or y if x is True,return x,else return yint —> bool 非0为True,0为Flase

print(3 or 2)
print(2 or 6)
print(0 or 6)
print(3 and 5)
print(1 > 2 or 3 and 4 > 5)

猜你喜欢

转载自blog.csdn.net/qq_40585450/article/details/79805473