简单介绍一下python2.x和3.5的区别
 
print
 
在python3.5中print 变为print()

Old: print "The answer is" ,  *
New: print( "The answer is" , * )
如果想要不换行,之前的 2.x 版本可以这样

print x,   #在末尾加上‘ ,’
但在 3.x 中这样不起任何作用,要想不换行你应该写成

print(x,end = '' )
 
/
 
Old:  /   #结果为0
New: / #终于等于0.
 
raw_input
 
New: input() 等于 Old:raw_input
 
input
 
在3.5中input已经被删除
New:eval(input()) 等于 Old:input()
 
列表排序
 
python3.5中序列中不同类型不能进行顺序排列

>>> lb=[,,,'a','b']
>>> lb
[, , , 'a', 'b']
>>> lb.sort()
Traceback (most recent call last):
File "<pyshell#2>", line , in <module>
lb.sort()
TypeError: unorderable types: str() < int()
>>> lb.reverse()
>>> lb
['b', 'a', , , ]
python2.x

>>> lb=[,,,'a','b']
>>> lb.sort()
>>> lb
[, , , 'a', 'b']
>>> lb.reverse()
>>> lb
['b', 'a', , , ]
 
字符编码

Python 3最重要的新特性大概要算是对文本和二进制数据作了更为清晰的区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示。 Python 3不会以任意隐式的方式混用str和bytes,正是这使得两者的区分特别清晰。你不能拼接字符串和字节包,也无法在字节包里搜索字符串(反之亦然),也 不能将字符串传入参数为字节包的函数(反之亦然)。

 

字符串可以编码成字节包,而字节包可以解码成字符串。

>>>'€20'.encode('utf-8')
b'\xe2\x82\xac20'
>>> b'\xe2\x82\xac20'.decode('utf-8')
'€20'
 
在python2.下,字符串存储类型,英文为unicode;汉字为str
 
字典keys,values,items返回值
python3.5

>>> data={'haha':,'xixi':}
>>> data.keys()
dict_keys(['haha', 'xixi'])
>>> type(data.keys())
<class 'dict_keys'>
python2.x

>>> data={'haha':,'xixi':}
>>> data.keys()
['xixi', 'haha']
>>> type(data.keys())
<type 'list'>

安装Python

windows:

、下载安装包
https://www.python.org/downloads/
、安装
默认安装路径:C:\python34
、配置环境变量
【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
如:原来的值;C:\python34,切记前面有分号

linux 

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

、下载Python3.5的源码包并编译

wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tar.xz
tar xf Python-3.5..tgz
cd Python-3.5.2
./configure --prefix=/usr/local --enable-shared
make
make install
ln –s /usr/local/bin/python3 /usr/bin/python3 、在运行Python之前需要配置库: echo /usr/local/lib >> /etc/ld.so.conf.d/local.conf
ldconfig 、运行演示: python3 --version
Python 3.5.2
声明解释器
#!/usr/bin/env python
 
第一个python程序
#!/usr/bin/env python
print("你好,世界")
执行 hello.py 文件,即: python hello.py
python内部执行过程如下:
在linux下脚本执行
python hello.py
或者 申明了解释器
chmod +x hello.py
./hello.py #执行
 
执行脚本传入参数
Python内部提供一个 sys 的模块,其中的 sys.argv 用来捕获执行执行python脚本时传入的参数
import sys
print(sys.argv)
 
变量
 
变量的作用:
变量是用来在程序运行期间存储各种需要临时保存可以不断改变的数据的标识符,一个变量有一个名字,
并且在内存中占据一定的存储单元,在存储单元中存放该变量的值。
 
变量的命名规则
变量名只能是字母、数字或下划线组合
变量名第一个字符不能是数字
关键字不能声明为变量名
变量名应保持同一种风格,保持友好性
check_load_one
Check_Load_One
 
当我们执行
name = 'koka"
python 解释器干了两件事
- 在内存中创建了一个“koka”的字符串
- 在内存中创建了一个名为name的变量,并把它指向“koka”的内存地址
 
接下来看一个详细的事例:
当你把一个变量name1赋值给另一个变量name2时,解释器只是把name1所指向的内存地址赋值给了
name2,因此name1和name2并未发生直接的关联,只不过他们指向同一个内存地址而已,所以当你
再次给name指向一个新地址后,而name2的值依旧不变。
 
输入语句
 
在python3.X版本中 输入语句有以下改变
 
raw_input
 
New: input() 等于 Old:raw_input
 
hi = input("welcome to python 3.5 :")
 
input
 
input已经被删除
 
New:eval(input()) 等于 Old:input()
 
数据类型:
 
整数:python可处理任意大小的整数;
 
浮点数:小数;
 
字符串:以''或“”括起来的任意文本;
 
万恶的字符串拼接:python中的字符串在C语言中体现为是一个字符数组,每次创建字符串时候需要在内存中开辟一块连续的空间,
 
并且一旦需要修改字符串的话,就需要再次开辟空间,万恶的+号每出现一次就会在内存中重新开辟一块空间。
 
布尔值:只有两种值Ture or False;
 
空值:空值在python里是一个特殊的值,用None表示,0并不是空值。
 
缩进与注释
 
缩进
python 是强制缩进的语言,它通过缩进来确定一个新的逻辑层次的开始和结束;同一逻辑级别的代码必须不能有缩进;整个程序的缩进风格应该保持一致,一般为4个空格或2个空格;用冒号表示开始一个新的语句块。
 
注释
当你写程序的时候应该保持添加注释的习惯,对于自己回顾与别人查看都很方便。一般情况下,源程序有效注释量应该在20%以上,注释的原则是有助于对程序的阅读理解,不宜过多也不能太少。
单行注释:#
多行注释:"""  """ 或 ''' '''

条件语句
number=
number=int(input("please input the number:"))
if number == luck_num:
print("Bingo!")
elif number > luck_num:
print("你输入的数字太大。")
else:
print("你输入的数字太小。")
 
嵌套语句
name = input("what is your name ? ")
if name.endswith('Gumby'):
if name.startswith('Mr.'):
print("hello Mr.Gumby")
elif name.startswith('Mrs.'):
print('hello Mrs.Gumby')
else:
print('hello Gumby')
else:
print('hello strange')
 
循环语句
luck_num =
counter=
for i in range():
number = int(input("please input int number:").strip())
if luck_num > number:
print("please input bigger number")
elif luck_num < number:
print("please input smaller number")
else:
print("bingo")
break
else:
print("too many time error")
#最后的else语句只会在循环正常结束的情况下才会运行,如果中间被break了,就不会继续运行了。 luck_num =
counter=
while counter < :
number = int(input("please input int number:").strip())
counter+=
if luck_num > number:
print("please input bigger number")
elif luck_num < number:
print("please input smaller number")
else:
print("bingo")
break
else:
print("too many time error")
 
break and continue
 
break负责跳出整个循环,而continue只会跳出本次循环,继续下一次循环。
 
for i in range():
if i% ==:
continue
print("这是奇数",i)
 

break只能跳出一层循环,有的时候你可以能会有两个或多个循环嵌套,python也不支持一次性跳出所有循环;可以在
一层循环中添加标志让另一循环在跳出时修改标志一起跳出。

 
loop1 =
loop2 =
while True:
loop1 +=
print("Loop1:", loop1)
break_flag = False #在父循环中设置一个跳出标志,子循环要想连父循环一起跳出,就改变这个标志。
while True:
loop2 +=
if loop2 ==:
break_flag = True #改变标志
break #跳出当前循环
print('Loop2:',loop2)
if break_flag:
print("接到子循环跳出通知,我也跳出循环")
break

Python列表推导

通过示例学习Python列表推导:http://python.jobbole.com/80823/

python学习笔记一 python入门(基础篇)的更多相关文章

  1. python学习笔记二 数据类型(基础篇)

    Python基础 对于Python,一切事物都是对象,对象基于类创建         不同类型的类可以创造出字符串,数字,列表这样的对象,比如"koka".24.['北京', '上 ...

  2. python学习笔记三 函数(基础篇)

    函数 内置函数 常用的内建函数: type()  列出指定对象的类型 help()  能够提供详细的帮助信息 dir()    将对象的所有特性列出 vars()  列出当前模块的所有变量 file, ...

  3. tensorflow学习笔记二:入门基础 好教程 可用

    http://www.cnblogs.com/denny402/p/5852083.html tensorflow学习笔记二:入门基础   TensorFlow用张量这种数据结构来表示所有的数据.用一 ...

  4. Python学习笔记(一)基础

    学习资料 跟着廖雪峰的Python教程学习Python,大家可以去官方网站查看学习教程.使用的Python版本为3.0.x,解释器为CPython.本系列博客为学习笔记,记录跟随廖老师所学知识,同时会 ...

  5. python学习笔记——(一)基础设置

    python的学习,今天就开始上开发环境Pycharm,这样以后在调试,使用和学习起来就方便很多. 我用的是JetBrains PyCharm Community Edition 2018.1.1 x ...

  6. python学习笔记(一):python简介和入门

    最近重新开始学习python,之前也自学过一段时间python,对python还算有点了解,本次重新认识python,也算当写一个小小的教程.一.什么是python?python是一种面向对象.解释型 ...

  7. python学习笔记(python介绍)

    为什么要学python? python和shell的比较,和PHP.和JAVA比较 运维开发只是用到python的很小一部分 python在一些知名公司的应用: 谷歌:python的创始人原来在谷歌工 ...

  8. python 学习笔记 9 -- Python强大的自省简析

    1. 什么是自省? 自省就是自我评价.自我反省.自我批评.自我调控和自我教育,是孔子提出的一种自我道德修养的方法.他说:“见贤思齐焉,见不贤而内自省也.”(<论语·里仁>)当然,我们今天不 ...

  9. 嵌入式Linux学习笔记之第一阶段---基础篇

    嵌入式Linux学习分五个阶段 第一阶段: 01嵌入式环境搭建初期 02C语言语法概述 03C语言内存操作 04c语言函数 05linux基础 06gun基础 第二阶段: 01-linux之io系统编 ...

  10. Python学习笔记 - day12 - Python操作NoSQL

    NoSQL(非关系型数据库) NoSQL,指的是非关系型的数据库.NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称.用于超大规模数据的存储.(例如 ...

随机推荐

  1. C++之路起航——标准模板库(queue)

    queue: FIFO队列:先进先出队列. 优先队列:对队列中的元素按优先级的大小输出. 定义: FIFO队列: queue<数据类性>变量名. 优先队列:priority_queue&l ...

  2. Tostring(); 括号中的参数 格式化字符串

    最近在逛 msdn 发现    查到  getTypeCode 方法  看到里边居然有 tostring("D")这样的写法      运行了一遍 感觉可以显示值      然后就 ...

  3. 关于linux的systemd的一些事

    1. 输出运行失败的单元: systemctl --failed 2. 所有的单元文件存放在 /usr/lib/systemd/system/ 和 /etc/systemd/system/ 这两个目录 ...

  4. 【py技巧】使用reload重导入修改过的包或模块

    #使用import导入 import my_module my_module.something() #out - orignal #这里修改输出 - changed reload(my_module ...

  5. C语言初学者代码中的常见错误与瑕疵(2)

    问题: 另一种阶乘 大家都知道阶乘这个概念,举个简单的例子:5!=1*2*3*4*5. 现在我们引入一种新的阶乘概念,将原来的每个数相乘变为i不大于n的所有奇数相乘 例如:5!!=1*3*5.现在明白 ...

  6. Openstack的用户登录流程

    openstack的用户登录,需要获得集中权限. token 只需要提供用户名和密码即可获得,接口 http://public_url/tokens method:POST body:{"a ...

  7. scala模式匹配

    package com.ming.test /** * 模式匹配 */ object MatchTest { def main(args: Array[String]): Unit = { //mat ...

  8. SuperSocket架构设计示意图【转】

    转自:http://docs.supersocket.net/v1-6/zh-CN/Architecture-Diagrams 中文(中国)Toggle Dropdown v1.6Toggle Dro ...

  9. java多线程中的生产者与消费者之等待唤醒机制@Version1.0

    一.生产者消费者模式的学生类成员变量生产与消费demo,第一版1.等待唤醒:    Object类中提供了三个方法:    wait():等待    notify():唤醒单个线程    notify ...

  10. WWDC 2016 总结

    一年一次的WWDC,是开发者充值信仰的时刻,今天你的信仰充值了吗?欢迎在本文下面留言吐槽. 有外媒称,这届WWDC苹果将“fun”伪装成“innovation”,的确,看看另两家老对手,微软有黑科技H ...