Python 入门学习笔记,,安装和运行官网下载安
Python 入门学习笔记,,安装和运行官网下载安
安装和运行
官网下载安装包
https://www.python.org/downloads/mac-osx/
下载完直接安装即可
运行
打开 terminal,输入命令 python,进入 python 环境(类似输入 node 进入 node 环境)
退出 python 环境
exit()
>>> pythonPython 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 12:01:12) [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwinType "help", "copyright", "credits" or "license" for more information.>>> 1 + 23>>> exit()
print 语句
打印多个字符串,用逗号隔开,就可以连成一串输出
print ‘This is Tuesday‘, ‘I am study Python‘
注释
# print ‘This is a comment‘
raw 字符串
内部字符串不需要转义,类似 html 中 pre 标签的功能
print r‘\$%^&*(_)(*&^%$/‘
多行字符串
print ‘‘‘ Line 1line2line3 ‘‘‘
list (类似 js 中数组)
>>> arr = [1, 2, 3, ‘abc‘, ‘你好‘]>>> arr[1, 2, 3, ‘abc‘, ‘你好‘]
list 元素的访问和 js 数组类似
arr[3] # ‘abc‘
倒序访问 list 元素
arr[-1] # ‘你好‘
在 list 末尾添加元素
list.append(‘new item‘)
在 list 指定位置添加元素
list.insert(3, ‘new item‘) # 在 index = 3 的位置上添加新元素,后面的元素依次后移一位
list 中删除元素
list.pop(index)list.pop() # 删除 list 中最后一个元素list.pop(2) # 删除 list index = 2 的元素
tuple(元组、数组)
类似 list 的有序列表,但是不可变,相当于常量类型的 list
t = (‘Apple‘, ‘Peach‘, ‘Banana‘)
tuple 访问元素的操作和 list 一致,但是对列表元素不能执行 append、 insert 和 pop 操作
创建tuple
t = ()
创建包含一个元素的tuple
不能写成 t = (1) # 1
而应该是 t = (1,) # 添加一个逗号来避免歧义,明确这是一个 tuple
if 语句
age = 20if age >= 18:print ‘ur age is‘, age
代码缩进规则
具有相同缩进的代码被视为代码块,不要混合使用 tab 和空格
if 语句后面跟表达式,并用冒号:表示代码块开始
if-else(else 后面要跟冒号:)
if name == ‘wangxi‘: print ‘hello wangxi‘else: print ‘hello strange‘# hello wangxi
if-elif-else
if age >= 18: print ‘adult‘elif age >= 6: print ‘teenager‘elif age >= 3: print ‘kid‘else: print ‘baby‘
for 循环
for item in list: print item
dict
dictionary,字典,类似 js 对象,使用 key-value 键值对来表示元素的对应关系s
d = { ‘name‘: ‘wangxi‘, ‘age‘: 25}# { ‘name‘: ‘wangxi‘, ‘age‘: 25 }
len(dict)
计算 dict 的长度
len(d) # 2
访问dict
dict[‘name‘] # ‘wangxi‘dict.get(‘name‘) # ‘wangxi‘
判断 key 是否存在
if ‘name‘ in d: print d[‘name‘] # ‘wangxi‘
获取 dict 的 key
for key in d: print key# name# age
获取 dict 的 value
for value in d.values(): print value# ‘wangxi‘# 25
itervalues() 不会转换 dict,在迭代过程中依次从 dict 中取出 value,而 values() 会将 dict 转换成 包含 value 的 list
for value in d.itervalues(): print value# ‘wangxi‘# 25
同时获取 key 和 value
for key, value in d.items(): print key, ‘:‘, value# name: ‘wangxi‘# age: 25
dict 的特点以及和 list 的比较
查找速度快,但是占用内存大,list 则相反key 是唯一的,不能重复,list 中的元素是可以重复的key-value 是没有顺序的,list 则是有顺序的key 是不可变的(字符串、整数、浮点数等)set
和 JS es6 中的 set 几乎一样
可以理解为元素唯一的不可重复的数组
如果创建或修改的时候出现重复元素,则会自动过滤
s = set([1, 2, 2, 3, 3, 4]) # set([1, 2, 3, 4])
特点
1. set 存储的元素是无序的,所以不能用索引来访问 set 元素
使用 in 操作符判断元素是否在 set 中 (es6 中使用 has() 方法)
2 in s # true
2. set 的元素是不可变的
遍历set(for...in...)
for item in s print s
更新 set
添加 add()
s.add(‘wangxi‘) # set([1, 2, 3, 4, ‘wangxi‘])
删除 remove() # es6 中使用 delete
内置函数
abs()
cmp(1, 2)
函数
def functionName(x):
pass
函数返回多个值
def getUserInfo (name, age): return name, agegetUserInfo(‘wangxi‘, 25) # (‘wangxi‘, 25) 返回值是 tuple 类型
递归函数
def fact(n): if n == 1: return 1 return n * fact(n)
指定默认参数(和 es6 用法相同)
定义可变参数
def fn(*args): print argsfn(1, 2, 2, 3) # 打印的是 args 的 tuple (1, 2, 2, 3)
对 list 或 tuple 或 字符串进行切片
L = range(1, 100) # 生成 1~100 的listL[1: 3] # [2, 3]L[:3] # [1, 2, 3] 相当于 L[0: 3] 开始是 0 可以省略L[:] # 从头到尾选取元素,相当于复制一个新的 listL[::3] # 从 0 开始,每三个元素选取一个 [1, 4, 7...]L[2::3] # 从第三个元素开始,每三个元素选取一个 [3, 6, 9...]‘ABCDEFG‘[1:3] # ‘BC‘
迭代循环
for x in xrange(1,10): passs
索引迭代
L = [‘apple‘, ‘pear‘, ‘strawberry‘, ‘grape‘] for index, name in enumerate(L): print index, ‘-‘, name# 0 - apple# 1 - pear# 2 - strawberry# 3 - grape
生成列表
生成 [1x2, 3x4, 5x6, 7x8, ..., 99x100]
[x * (x + 1) for x in range(1, 100, 2)]
条件过滤
计算列表中偶数项的平方
[x * x for x in range(1, 100) if x % 2 == 0]# [4, 16, 36, 64, ...]
多层表达式
L = []for m in ‘ABC‘: for n in ‘123‘: L.append(m + n)
转换成
[m + n for m in ‘ABC‘ for n in ‘123‘]# [‘A1‘, ‘A2‘, ‘A3‘, ‘B1‘, ‘B2‘, ‘B3‘, ‘C1‘, ‘C2‘, ‘C3‘]
Python 入门学习笔记
相关内容
- python第六天,,今天学习第一模块的最
- 易错易忘点,, 目录
- IntelliJ IDEA下Java、Python实现Thrift调用,,终于跑通了!!
- install python3 env in centos7,,1. install
- python--matplotlib库使用2,,功能:python画
- python3实现TCP协议的简单服务器和客户端,,利用python3来
- Centos7下python3安装ipython,,一、通过压缩包安装i
- 五行Python代码教你用微信来控制电脑摄像头,,如果说强
- python中xrange和range(转),,说到序列,我们第一想
- Python-百度经纬度转高德经纬度,,import mat
评论关闭