二、为什么要使用Python

优点:

学习成本低

开发效率高–拥有丰富而且强大的第三方库

高级语言–不用关心底层运作细节

可扩展性–Python是一门胶水语言,能于其他语言如C ,C#进行扩展

缺点:

执行速度慢

代码不能够加密

多线程问题

三、安装Python

Ubuntu14.04自带Python2.7和python3.x,Windows则需要去官方网站下载exe安装文件

四、第一个Python程序

运行第一个“Hello World”程序,我们需要做的是在编辑器写好以下代码,然后保存为hello.py。

在Linux的终端中输入 python  文件保存路径+hello.py运行程序;Windows请在cmd窗口运行。

#!/usr/bin/env python

# -*- coding: utf-8 -*-

print 'hello world!'

print 'bye-bye world!'

Python基础

一、解释器

前面的第一个Python程序中"#!/usr/bin/env python"为在程序文件头上声明需要调用的解释器,这样做的目的是让python程序能在类unix系统上正确执行。

二、执行过程

Python程序的执行过程是:

加载内存–>词法分析–>语法分析–>放入编译–>生成机器码–>执行机器码文本编码

三、字符集问题

前面的第一个Python程序中"# -*- coding: utf-8 -*-"为程序文本编码的声明,其作用是告诉解释器此程序的文本以UTF-8格式显示字符。

ASCII码编码方式表示字符数有限,表示诸如汉字等其他语系文字必须使用unicode,但unicode会有存储浪费的问题,所以采用改进型的UTF-8编码方式以节省磁盘空间:)

几个字符集转换过程如图所示:

python2编解码小程序,

#!/usr/bin/env python

#-*- coding: utf-8 -*-

#temp为utf-8格式代码,需要先decode成unicode然后再encode为gbk格式

temp = "张三" # utf-8

temp_unicode = temp.decode('utf-8')

temp_gbk = temp_unicode.encode('gbk')

print(temp_gbk)

Python 3.x默认采用UTF-8方式进行编码

python3 socket默认以bytes方式传送

所以:

s = "李露"

new_bytes_utf = bytes(s, encoding="utf-8")

print(new_bytes_utf)

new_bytes_gbk = bytes(s, encoding="gbk")

print(new_bytes_gbk)

# 还原成字符串

new_str = str(new_bytes_utf, encoding="utf-8")

print(new_str)

# utf8编码一个字符三个字节

b'\xe6\x9d\x8e\xe9\x9c\xb2'

# gbk编码一个字符两个字节

b'\xc0\xee\xc2\xb6'

# 李露

四、注释符

给Python代码加注释非常简单,对于单行注释使用" # ",对于多行注释则使用"""进行注释。

五、如何传入参数

Python有大量的模块,从而使得开发Python程序非常简洁。类库有包括三中:

Python内部提供的模块

业内开源的模块

程序员自己开发的模块

Python内部提供一个 sys 的模块,其中的 sys.argv 用来捕获执行执行python脚本时传入的参数

#!/usr/bin/env python

# -*- coding: utf-8 -*-

import sys

sys.argv

六、变量名命名规则

1.字母,数字,下划线

2.第一个字母不是数字

3.避开Python关键字:

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']

七、条件判断

1.if else语句

python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块

#!/usr/bin/env python

#-*- coding: utf-8 -*-

#输入用户名和密码

#如果输入用户名和密码与系统内记录相符合则登录成功

#否则失败

import getpass

user = 'alex'

pw = ''

input_user = raw_input("Login:")

input_pw = getpass.getpass("Password:")

if input_user == user and input_pw == pw :

print "Welcome %s" %user

else:

print "Fail,check your name or password"

2.if elif语句

#!/usr/bin/env python

# -*- coding: utf-8 -*-

#根据用户输入的名字打印名字相应的权限

#eric 普通

#tony 超级

#alex 超神

name = raw_input('please input name: ')

if name == 'eric':

print 'simple'

elif name == 'tony':

print 'super'

elif name == 'alex':

print 'god'

else:

print 'ur not user on this system,bye-bye!'

八、循环

1.while循环

while 语句用于循环执行程序,判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。

#!/usr/bin/env python

#-*- coding: utf-8 -*-

#打印1到4的数字

#起始值为1

#当数字到5则break结束程序

count = 1

while True:

if count == 5:

break

print(count) count += 1

#!/usr/bin/env python

#-*- coding: utf-8 -*-

#从1开始打印数字

#打印到3时放弃打印

#打印到10退出程序不打印

count = 1

while True:

if count == 10:

break

if count == 3:

count += 1

continue

print(count)

count += 1

2.for循环

for循环可以用来遍历任何序列的项目,比如一个列表或者一个字符串。

#!/usr/bin/env python

#-*- coding: utf-8 -*-

#遍历一个字典

dic = {"k1":123,"k2":456}

for k in dic:

print(k,dic[k])

3.continue,break,pass

continue,break 是用来跳过循环的,continue 用于跳过本次循环,break 则是用于彻底退出循环;

如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。

pass是空语句,在判断条件下面加上pass的意思是什么也不执行。保证程序语法完整并且让程序能正常运行。

python知识笔记_[Python笔记]第一篇:基础知识相关推荐

  1. [Python笔记]第一篇:基础知识

    本篇主要内容有:什么是python.如何安装python.py解释器解释过程.字符集转换知识.传参.流程控制 初识Python 一.什么是Python Python是一种面向对象.解释型计算机程序设计 ...

  2. 【深入剖析Tomcat笔记】第一篇 基础知识储备

    基础知识储备 最近突然在想,做了这么久的WEB相关,像tomcat.apache这些服务器究竟是什么东西,恰好碰到<How Tomcat Works>(中文版<深入剖析Tomcat& ...

  3. php百分比乘加,PHP学习笔记第一篇 基础知识

    基础知识 我将php语言学习里面最最基础的部分,需要第一个学的,必须牢牢掌握的,归类到一起. 大纲 1.数据类型 2.变量 3.常量 4.操作符 5.流程控制 6.数组 7.字符串操作 8.正则 基础 ...

  4. Python编程从入门到实践 第一部分基础知识 代码合集

    第2章 变量和简单数据类型 2.1 运行hello_world.py时发生的情况 print("Hello Python world!") 2.2 变量 message=" ...

  5. MySQL学习笔记-第一篇-基础知识与命令

    目录 1 登录命令 1.1 主机域名登录 1.2 主机ip登录 2 库命令 2.1 显示库 2.2 创建数据库 2.3 删除数据库 2.4 MySQL-8.新特性 3 表命令 3.1 创建数据表 3. ...

  6. c基础学汇编语言,王爽《汇编语言》学习笔记、习题(第一章 基础知识)

    汇编语言的组成 汇编语言发展至今,有以下3类指令组成: 1.汇编指令:机器码和助记符,没有对应的机器码. 2.伪指令:没有对应的机器码,由编译器执行,计算机并不执行. 3.其他符号:如+.-.*./等 ...

  7. Java第一篇基础知识复习

    2.1.java的基本语法 Java中的程序代码都必须放在一个类中,类需要使用class关键字定义 1.Java中的程序代码可分为结构定义语句和功能执行语句,其中,结构定义语句用于声明一个类或方法,功 ...

  8. 【Python学习笔记】第一章基础知识:格式化输出,转义字符,变量类型转换,算术运算符,运算符优先级和赋值运算符,逻辑运算符,世界杯案例题目,条件判断if语句,猜拳游戏与三目运算符

    Python学习笔记之[第一章]基础知识 前言: 一.格式化输出 1.基本格式: 2.练习代码: 二.转义字符 1.基本格式: 2.练习代码: 3.输出结果: 三.输入 1.基本格式: 2.练习代码: ...

  9. Python 自动化教程(1) 概述,第一篇 Excel自动化首篇

    人生苦短, 我用Python!  Python语法简炼.易上手,且有丰富的库可用,实现一个应用很简洁. Python常用于自动化.自动化的基本含义,是把人的动作写成程序,让计算机代替人工作.主要分为几 ...

最新文章

  1. docker 部署nginx
  2. 八皇后问题python_python求解八皇后问题
  3. ASP.NET Core模块化前后端分离快速开发框架介绍
  4. 怎么避免options请求_和上级沟通的正确打开方式:3种技巧,轻松让领导答应你的请求...
  5. 阿米洛键盘取消win_阿米洛花旦娘静电容V2键盘测评:不止是一把好看的键盘
  6. xyCMS框架的webshell
  7. andpods授权码订单号分享_微信OAuth2授权登录
  8. java动态加载类 框架_java运用RMI框架类的动态加载不成功
  9. 前端复习-02-ajax原生以及jq和跨域方面的应用。
  10. python 谷歌翻译 api_调用谷歌翻译API
  11. 通过duet软件实现ipad作为mac的副屏并修改分辨率
  12. java查看eth转账状态_eth交易记录input解析
  13. 熊出没电锯机器人哪一集_熊出没伐木机器人第几集 熊出没光头强造伐木机器人是哪一集?...
  14. opencv-python cv2.VideoWriter() 导出视频无法播放的四个原因
  15. 怎样恢复内存卡的视频文件?(图文操作解析)
  16. 使用Substrate开发区块链存证dApp
  17. BLAST原理和用法总结(二)
  18. T00ls Lpk Sethc 全新v2.0版(附LPK提权)
  19. ALCNet——红外小目标检测网络论文阅读
  20. C++代码破解LOL人物基址特征,基址在源码里面自己找!

热门文章

  1. linux 安装源码网卡包,【linux命令】Linux通过yum 或者源码编译安装vnstat查看网卡流量...
  2. python显示乱码_python2显示乱码问题实战详解
  3. 深度学习 3 循环神经网络 RNN Recurrent Neural Networks
  4. java 标识符命名规则_java语言基础之标识符和命名规则详解
  5. b超可以看出什么_B超可以查出什么
  6. jdbctypetimestamp_mysql之TIMESTAMP(时间戳)用法详解
  7. CRS磁盘force dismount引起的RAC节点宕机故障
  8. 【假期重磅福利】更新三个Oracle系列课程,共153课时,最低免费获取
  9. 升级更新:Oracle关于DB Link在2019年升级的10g版本兼容性
  10. MongoDB 初体验:存储引擎 MMAPv1 与高内存消耗及升级迁移