python是一种解释型语言,所以可以一次执行一条语句。
IPython以及Jupyter notebook常用操作:
内省:变量名后使用'?',显示该变量概要信息。
%run
:运行任意的Python程序文件。
Ctrl+C
:终止正在运行的程序。
%paste
:执行剪切板中的程序。(IPython中可用,在Jupyter notebook会报错。)
%Cpaste
:打开一个特殊提示符,手动粘贴待执行的python代码。matplotlib打开方式:
IPython中:%matplotlib
Jupyter notebook中:%matplotlib inline
-
Python变量和参数传递:
- 对一个变量赋值时,就等于将一个变量名绑定到一个对象上。
a = [1,2,3] b = a a.append(4) #b = [1,2,3,4]
- 一切皆为对象。
- Python被认为是强类型语言,所有的对象都拥有一个指定的类型(或类),隐式的转换只在某些特定情况下发生。
二元操作符:
整除://
a is b
:a和b是同一个Python对象则为True。(注意跟a == b的区别)-
可变对象和不可变类型。
可变对象:列表,字典,Numpy数组,大多数用户定义的类型也是可变的,可变对象中包含的对象和值是可以修改的。a_list = ['foo',2,[4,5]] a_list[2] = (3,4) #a_list = ['foo',2,(3,4)]
不可变类型:字符串,元组。
a_tuple = (3,5,(4,5)) a_tuple[1] = 'four' #TypeError
-
标量类型
数值类型:
int
:可以存储任意大小的数字。
float
:双精度64位数值。-
字符串
可以用单引号或双引号写一个字符串。
对于含有换行的多行字符串,可以使用三个单引号'''
或三个双引号"""
。
字符串属于不可变类型,你无法修改一个字符串。
字符串是Unicode字符的序列,因此可以看作除了列表和元组之外的另一种序列。
可以进行切片操作。
\
:转义字符,用来指明特殊符号。如果在字符串中写反斜杠则需要将其转义:s = '12 \\ 34' print(s) #12\34
如果你有一个不含特殊符号但含有大量反斜杠的字符串时,你可以在字符串前面加一个前缀符号
r
,表明这些字符是原生字符:s = r'this\has\no\special\characters'
字符串格式化:
template = '{0:.2f} {1:s} are worith US${2:d}' template.format(4.5560,'Argentine Pesos',1) #‘4.56 Argentine Pesos are worth US$1'
在这个字符串中,
{0:.2f}
表示将第一个参数格式化位2位小数的浮点数,{1:s}
表示将第二个参数格式化为字符串,{2:d}
表示将第三个参数格式化为整数。字节与Unicode
在Python3.0及以上,Unicode成为字符串类型的一等类,用于更好的兼容处理ASCII和非ASCII文本。在Python早期的版本中,字符串完全是字节,而没有显式的Unicode编码。如果你知道字符的编码,就可以将其转换成Unicode。val = "espanol" val_utf8 = val.encode('utf-8') #val
如果你知道一个字节对象的Unicode编码,你可以再使用
decode
方法进行解码。val_utf8.decode('utf-8')
-
日期和时间
Python中内建datetime
模块,提供了datetime
、date
和time
类型。from datetime import datetime,date,time dt.datetime(2020,1,1,23,48,30) dt.day # 1 dt.minute # 30 dt.month # 1
对于datetime实例,你可以分别使用
date
和time
方法获取它的data和time对象。dt.date() //datetime.date(2020,1,1) dt.time() //datetime.time(23,48,30)
strftime
方法将datetime转换为字符串。dt.strftime('%m/%d/%Y %H:/%M') # '1/1/2020 23:48'
strptime
方法将字符串转换为datetime对象。datetime.strptime('202011','%Y%m%d') //datetime.datetime(2020,1,1,0,0)
当你在聚合或分组时间序列数据时,一个常用的操作,将分秒替换为0。
dt.replace(minute = 0,second = 0) // datetime.datetime(2020,1,1,23,0)
datetime.datetime
属于不可变类型,所有的方法都是产生新的对象。两个不同的datetime
对象会产生一个datetime.timedelta
类型的对象,表示时间间隔。dt2 = datetime(2011,11,15,22,30) delta = dt - dt2 // datetime.timedelta(days=2969, seconds=4660)
-
三元表达式
Python中的三元表达式允许你将一个if-else
代码快联合起来,在一行中生成数据。
value = true-expr if condition else false-expr
与下列代码效果一致:if condition: value = true-expr else: value = false-expr
例:
a = 1 if a < b 2
-
range
range
函数返回一个迭代器,该迭代器生成一个等差数列。range(10) // range(0,10) list(range(10)) // [0,1,2,3,4,5,6,7,8,9] list(range(0,20,2) // [0,2,4,6,8,10,12,14,16,18] list(range(5,0,-1)) // [5,4,3,2,1]
第2章 python语言基础、IPython及Jupyter notebook
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 资料来源:https://github.com/BrambleXu/pydata-notebook 第2章 Pyt...
- 2.3 Python语法基础 在本节中,我将概述基本的Python概念和语言机制。在下一章,我将详细介绍Pytho...
- 前面主要介绍了一下Python解释器和IPython基础。需要注意的是: Tab补全: 1.在shell中输入表达...