本篇主要内容:

• Python的特点

• Python的种类

• Python的编码

• Python的安装环境推荐

• Python的基础用法:输入输出,算术运算符,逻辑运算符,基本程序结构语法

  我为什么要学Python呢?很简单,Python实在是太强大了。它不需要很专业的数据结构、算法知识,需要用的路别人都铺好了,并且铺的特别平正,我们需要做的就是去调包即可,可以节省大量的时间。但是正是由于别人都把工作安排的明明白白,导致很多学Python的人到头来只会搬砖,所以我要清楚,语言只是工具,不管去用来做什么,都要懂得其中之理。

  Python的特点:即快又慢,快在它开发速度快,搭建一个网站只需要几行代码,做大量数据的数据也只是需要几行代码,开发者在很短的时间内就能做出自己想做的产品。慢在它的性能,执行同样的功能,C需要1秒,Python就至少需要10秒,就是因为Python的高度封装性,可能只是一行打码,但其底层会花费大量的时间。但是随着现在CPU执行速度的快速发展,Python的劣势越来越低,C的0.01s和Python的0.1s在我们看来没有任何区别,都是瞬间出结果。所以Python这几年的使用率一路飙升,已经超过了C++位居第三。

  Python的种类:目前用的最多的Python是用C语言写的,也叫CPython,其任何操作都是由Python解释器解释为C代码再执行的,效率也比较高。除此之外,还有JavaPython,C#Python,PyPy,他们的底层分别是Java,C#,Python,Pypy是对Python的再度封装,使其更加简洁,但是使用率不高。这三种Python几乎没人用,因为Java,C#也都是以C为底层的。。。直接用CPython就行啦。除非一些限制场景,比如Python要跟Java交互,这样的话用JavaPython会更好。大概就是下面这幅图的关系。

知道为什么大学里面第一个编程基础课是C了吧。他几乎是所有编程语言的祖宗。简单而又底层。所以如果想学好编程语言,还是要把C学踏实。学其他语言的时候才更容易理解,更容易找到错误所在。

  Python的编码:Python3的py文件都是以utf-8编码的。Python2则不是,需要加上#  -*- coding:utf-8 -*-。各种编码关系如下图所示。

  出现utf-8就是因为Unicode在处理字母时,也会编码为16位,这样的话高8位就全为0,反而浪费很多空间,所以utf-8就把字母编码为8位(1字节),把汉字编码为16位。其他国家语言的可能还有24位的。

  Python安装:

  强烈建议安装anoconda!!!他是Pyhon的开源环境管理包,安装了它,就有了Python,同时也会有Numpy,matplotlib这种非常常用的库,还会附带的有jupyter notebook,写Python的利器。具体安装方法网上多的是,只需要注意一定要勾选把路径配置到环境变量就行。

  IDE的话,上面说的jupyter notebook很不错,还有更专业的Pycharm(网上各种破解方法)。这两个就完全够了,Pycharm属于重量级的PythonIDE,比较吃内存,但他的功能也是十分的强大,想写个小项目,大项目完全没问题。jupyter notebook支持分段运行程序,在日常的学习中非常有用。

Python基础:

1、输入输出

a=input("Input something")

 这一句就相当于C里面的scanf,C++里面cin了,不过Python的input把所有输入的都储存为字符串了。

其实这个输入并没什么卵用。知道就行了。

print("Hello World!")

惊不惊喜,意不意外,一个Hello World!程序就这样写好了。。。。哈哈哈

源码里面是这样的。。。(pass是什么鬼,就不能写写是怎么实现的么,直接Pass了,应该在其他地方)这个

这个API

*args 表示可以同时输出多个内容,

sep=' ',表示输出多个内容时中间用空格隔开

end='\n',表示输出的内容以换行符为标志换行。
file,表示可以打印文件流。没用过这个

a=10
b=20
c="Hello World!"
print(a,b,c,"\nAlbert!",sep=',,,',end='\n')

打印出来就是

10,,,20,,,Hello World!,,,
Albert!

有时候想格式化打印还是挺有意思的。

2、算数运算符

对于数字的+ - * /就不用多说了。

%表示求余,

/表示除(不用处理整型浮点型问题,/会自动处理)

//表示求商,就相当于将除的结果取整,得到的还是整数。

**表示乘方运算。相当于数学符号^

注意Python可以直接用+ -  *对字符串进行操作。

3、逻辑运算符

Python里与是and,或是or,非是not。这个跟C里面就不一样的,当成我就用混过,

不过经过试验,与可以用&,或可以用|,非不可以用!。

还有一个非常好用的in

a in b会返回a是否在b里面,这个以后在列表,字典,元组,字符串中很好用。判断不在就是a not in b。

这样就不用自己去写遍历,或者二分查找算法了。

4、程序结构

当然是顺序,分支,循环啦。

分支:

a=97
b=99
if a>b:
print("a大于b")
elif a==b:
print("a等于b")
else:
print("a小于b")

注意:Python里面不{}表示代码块,而是用的不同的缩进。同样的缩进表示在同一个代码块里面,而不用大括号括住了。

注意冒号:,这个也跟其他编程语言不一样。刚开始我就有点没反应过来。

循环

while 1==1:
print("I LOVE YOU")

注意循环条件,冒号,缩进就行(缩进用tab键)

a=[1,2,3,4,5,6]
for i in a:
print(i)

最常用的还是这种,遍历所有元素。也不用什么i++,他会自己进行迭代。

输出

1
2
3
4
5
6

他能遍历很多数据类型。

a="I LOVE YOU"
for i in a:
print(i) 输出:
I L
O
V
E Y
O
U

今天这个就复习到这里。明天写数据类型。

												

Python——初识Python的更多相关文章

  1. Python导出Excel为Lua/Json/Xml实例教程(一):初识Python

    Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...

  2. Python开发【第一篇】:初识Python

    初识python 一.python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解 ...

  3. Python开发【第二篇】:初识Python

    Python开发[第二篇]:初识Python   Python简介 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏 ...

  4. 初识python面向对象

    一.初识python面向对象: class Person: #使用class关键字定义一个类 age=0 #类变量(静态变量) def eat(self,food): #定义一个方法 self.age ...

  5. Python初识与简介【开篇】

    目录 1.扯淡 2.Python历史 3.Python简介 4.Python应用 5.为什么是python而不是其他语言? 6.Python的种类 7.Python的特点 8.Python设计哲学 9 ...

  6. 篇2 安卓app自动化测试-初识python调用appium

    篇2              安卓app自动化测试-初识python调用appium --lamecho辣么丑 1.1概要 大家好!我是lamecho(辣么丑),上一篇也是<安卓app自动化测 ...

  7. 2017-06-22初识python

    初识python #!/usr/bin/env python (python解释器的文件路径)# -*- coding:utf-8 -*- (使用的编码内型)# python 2.7 <需要加第 ...

  8. python学习笔记:1.初识python

    4.26 今日内容大纲 1.初识计算机.CPU 内存 硬盘 2.python初识 3.python发展史以及影响 4.python的分类 5.python的种类 6.变量 7.常量 8.注释 9.基础 ...

  9. python基础篇_001_初识Python

    一.Python环境 windows环境安装Python步骤 .下载安装包:https://www.python.org/downloads/windows/  .安装:默认安装路径:C:\pytho ...

随机推荐

  1. nginx缓存批量清除

    研究了一段时间的缓存清除,说说了解的三种方式吧.        1. 原始的只增加缓存模块的,根据访问的路径一条条清除. 根据此方式要进行批量清除的话,必须在设定的缓存目录下通过自己写的程序来读取ng ...

  2. 2018.7.27 Json与Java相互转换

    Json.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" page ...

  3. .net 开源的网站

    https://www.zhihu.com/question/24408855 https://www.zhihu.com/question/19840134 这两个知乎的答案 介绍部分经典的.net ...

  4. python同时遍历数组的索引和元素

    1.一般要同时遍历数组的索引和元素需要先确定数组的长度length(元素个数),然后使用range函数来生成数组的索引,最后使用该索引来访问数组的元素. 具体做法如下: l = [2,7,11,15] ...

  5. 【洛谷P1880】[NOI1995]石子合并

    石子合并 fmax[l][r]表示合并区间[l,r]的最大分值, fmin[l][r]表示合并区间[l,r]的最小分值 for(k l~r-1) fmax[l][r]=max(fmax[l][r],f ...

  6. JT/T 1077-2016《道路运输车辆卫星定位系统车载视频平台技术要求》平台标准符合性检测合同

    合同编号: 道路运输车辆卫星定位系统 平台标准符合性检测合同 委托方(甲方): 受托方(乙方): 交通运输通信信息工程质量检测中心 签订时间: 签订地点: 北京市 委托方(甲方): 委托方(甲方): ...

  7. 可复用 React 的 HOC 以及的 Render Props

    重复是不可能的,这辈子都不可能写重复的代码 当然,这句话分分钟都要被产品(领导)打脸,真的最后一次改需求,我们烦恼于频繁修改的需求 虽然我们不能改变别人,但我们却可以尝试去做的更好,我们需要抽象,封装 ...

  8. LunaSchedule记录

    博客访问量突破10000!!!(值得高兴一下 用一学期超级课程表,被50+M的内存占用,巨慢的加载速度给弄烦了,就自己开发了一款课程表管理程式 添加日历订阅,自动导入到系统日历,无需安装任何app L ...

  9. Centos下使用Docker部署MySql

    本文讲述 CentOS 系统 Docker 中安装 MySql 的过程 步骤 1. 拉取 Docker Hub 官方提供的mysql镜像 docker pull mysql:5.7 2.运行容器 do ...

  10. TCPIP协议编程:基于UDP协议的局域网聊天工具的研发

    任务目标 聊天器采用客户端/服务器(C/S)模式: 客户端利用UDP与服务器相连,客户端与客户端之间通过UDP相互通信: 服务器端具有服务器端口设置维护客户端个人信息,记录客户端状态,分配账号等: 客 ...