Python 从零学起(纯基础) 笔记(一)
作者身份:初学Python,菜鸟
=================================================
1. 主提示符和次提示符
>>> 主提示符 - 等待输入下一个语句
... 次提示符 - 等待输入当前语句剩下部分
2. Python两种方式:语句和表达式
2-1 print语句完成Hello World:
>>> print("hello world!")
2-2 表达式没有关键字
可以是 数学运算符构成算术表达式
括号调用的函数
(注:未指定返回值的函数,返回None 等价于 NULL)
调用abs()返回绝对值函数:
>>> abs(-4)
4
>>> abs(-12)
12
>>> abs(3/2)
1.5
>>>
3.程序输出
用 print 查看字符串内容:
>>> myString = 'Hello String!'
>>> print(myString)
Hello String!
也可以这样查看:
>>> myString
‘Hello String!’
>>>
注:单引号中即字符串内容
4. 在表达式中, 下划线 _ 表示 最后一个表达式的值,接上述:
>>> _
'Hello String!'
5. %s 的使用
>>> print("%s is %d" % ("Bro.Young",1))
Bro.Young is 1
>>> print("%s is %d" % (7788,1))
7788 is 1
(注:可以将数字传递给%s)
>>> print("%s is %d" % (77.88,1))
77.88 is 1
(注:浮点型也可以)
6. 程序输入(内建函数input())
获得用户输入数据:
2.x系列使用raw_input()
>>> user = raw_input('Please Enter Your Name:')
(注: 3.x系列 不可用raw_input(),因为 3.x 系列不再使用 raw_input() 而是使用 input() )
3.x 系列使用input()
>>> user = input('Please Enter Your Name:')
Please Enter Your Name:
此时可输入姓名 Bro.Young
7. 输入一个数值字符串
上一例子仅限于文本输入,下面进行数值字符串输入
>>> number = input('Please Enter Your Number:')
Please Enter Your Number:1234
>>>print('Your Number is: %d' % (int(number)*2))
Your Number is:2468
(注:int() 将数值字符串转换成整数值)
8. 查看帮助文档
调用help(),以input为例,如下:
>>> help(input)
9. # 符号注释 (从 # 开始直到一行结束)
>>> #one word
... print('Single dog')
Single dog
10. 标准运算符
+ - * / // % **
加、减、乘、除、取余都是标准运算符
/ - 传统除法
// - 浮点除法(四舍五入)
** - 乘方运算符
>>> print(-1*2+3**3)
25
11. 标准比较运算符 - 返回布尔值
< <= > >= == != <>
>>> 1<2
True
>>> 1<= 2
True
>>> 1>2
False
(注: <> 不等于运算符 ABC/Pascal 风格,基本被淘汰)
12. 逻辑运算符 可连接任意表达式 返回布尔值
and or not
>>> 1 == 2
False
>>> 1!=2
True
>>> 1<2 and 1==2
False
>>> 1<2 or 1==2
True
>>> not 6.5<2
True
>>> 1<2<3
True
13. Python 是动态语言 - 不需要预先声明变量类型,变量的类型和值在赋值那一刻即被初始化。
>>> name = 'Tom'
>>> age = 20
>>> peer = 'senior student'
>>> print("%s is %d,%s" % (name,age,peer))
Tom is 20,senior student
>>> print('%s is %d,%s' % (name,age,peer))
Tom is 20,senior student
14. 支持增量赋值 - 运算符和等号合并在一起
例如:n *= 10
>>> n=1
>>> n *= 10
>>> --n
10
>>> -n
-10
>>> ++n
10
(注: 不支持 自增(++) 自减(--) 如:--n 被认为是-(-n)即n )
15. 五种基本数字类型
int - 有符号整型
long - 长整型
bool - 布尔型
float - 浮点型
complex - 复数
(注1: Python中的长整型远比C语言中的长整型表示的数大,其大小受限于计算机内存)
(注2: 布尔值true 和 false 放在数值上下文环境中 true 为 1,false 为 0)
16. 使用索引运算符([ ])和 切片运算符([ : ])可以得到字符串
规则:第一个字符的索 引是0,最后一个字符的索引是 -1。
加号(+)用于字符串连接运算 星号(*)用于字符串重复

[start : end] - 访问范围从start开始到 end(不包括end)的所有元素
>>> str = 'abcd'
>>> str[1:2]
'b'
>>> str[1:3]
'bc'
>>> str[1:4]
'bcd'
>>> str[-3:-1]
'bc'
>>> str2 = 'efg'
>>> str + str2
'abcdefg'
>>> str*2
'abcdabcd'
>>> '_'*10
'__________'
(注: [ : ]中的0 可以不写)
>>> str[0:2]
'ab'
>>> str[:2]
'ab'
17. 列表和元组 <==> 数组 可保存任意数量、任意类型的Python对象从 0 开始访问元素
与数组区别:列表和元组可以保存不同类型的对象
18. 字典是Python中的映射数据类型,由键值对(key-value)构成。值可以是任意类型的Python对象,字典元素用{ } 包裹
>>> myDict = {'hello':'host'}
>>> myDict
{'hello':'host'}
>>> myDict['world'] = 100
>>> myDict
{'world':100,'hello':'host'}
keys() 1
dic = dict(k1='v1',k2='v2')
print(dic.keys())
print(dic.values())
print(dic.items())
for k in dic.keys():
print(k)
for k in dic.values():
print(k)
for k in dic.items():
print(k)
结果:
dict_keys(['k2', 'k1'])
dict_values(['v2', 'v1'])
dict_items([('k2', 'v2'), ('k1', 'v1')])
k2
k1
v2
v1
('k2', 'v2')
('k1', 'v1')
pop() 和 popitem() 2
dic = dict(k1='v1',k2='v2')
#dic.pop('k1')
dic.popitem()
print(dic)
结果:
{'k1': 'v1'}
练习:
将一个列表中的元素,以66为界限分别放在字典dic的k1 和 k2 中
dic = {}
all_list=[11,22,33,4,44,55,66,78,99,6778]
for i in all_list:
if i >66:
if 'k1' in dic.keys():
dic['k1'].append(i)
else:
dic['k1']=[i,]
else:
if 'k2' in dic.keys():
dic['k2'].append(i)
else:
dic['k2']=[i,]
print(dic)
结果:
{'k2': [11, 22, 33, 4, 44, 55, 66], 'k1': [78, 99, 6778]}
Python 从零学起(纯基础) 笔记(一)的更多相关文章
- Python 从零学起(纯基础) 笔记 (二)
Day02 自学笔记 1. 对于Python,一切事物都是对象,对象基于类创建,对象具有的功能去类里找 name = ‘Young’ - 对象 Li1 = [11,22,33] ...
- Python 从零学起(纯基础) 笔记 之 迭代器、生成器和修饰器
Python的迭代器. 生成器和修饰器 1. 迭代器是访问集合元素的一种方式,从第一个到最后,只许前进不许后退. 优点:不要求事先准备好整个迭代过程中的所有元素,仅仅在迭代到某个元素时才计算该元素,而 ...
- Python 从零学起(纯基础) 笔记 之 深浅拷贝
深浅拷贝 1. import copy#浅拷贝copy.copy()#深拷贝copy.deepcopy()#赋值 = 2. 对于数字和字符串而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个 ...
- Python 从零学起(纯基础) 笔记 之 collection系列
Collection系列 1. 计数器(Counter) Counter是对字典类型的补充,用于追踪值的出现次数 ps 具备字典所有功能 + 自己的功能 Counter import col ...
- [Python] 文科生零基础学编程系列二——数据类型、变量、常量的基础概念
上一篇:[Python] 文科生零基础学编程系列--对象.集合.属性.方法的基本定义 下一篇: (仍先以最简单的Excel的VBA为例,语法与Python不同,但概念和逻辑需要理解透彻) p.p1 { ...
- [Python] 文科生零基础学编程系列三——数据运算符的基本类别
上一篇:[Python] 文科生零基础学编程系列二--数据类型.变量.常量的基础概念 下一篇: ※ 程序的执行过程,就是对数据进行运算的过程. 不同的数据类型,可以进行不同的运算, 按照数据运算类型的 ...
- 知了课堂 Python Flask零基础 笔记整理
目录 起步 安装Python2.7: Python虚拟环境介绍与安装: pip安装flask: 认识url: URL详解 web服务器和应用服务器以及web应用框架: Flask 第一个flask程序 ...
- Python入门方法推荐,哪些基础知识必学?
很多想入门的小伙伴还不知道Python应该怎么学,哪些知识必学,今天我们就来盘点一下. 01.入门方法推荐 总体来讲,找一本靠谱的书,由浅入深,边看边练. 网上的学习教程有很多,多到不知道如何选择.所 ...
- Python基础笔记系列十一:标准输入输出、文件读写和指针等操作
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 标准输入输出一.输入 在sublime中这个时候需要安装SublimeRE ...
随机推荐
- Android中一张图片加载后所占用内存大小的获取与测试
Android程序中一旦加载的图片比较多,就有可能出现Out of Memory而导致程序崩溃.这个一方面是因为Android系统本身对于每个单独的进程有内存大小的限制(有16M,64M,128M,2 ...
- C语言:关于socket的基础知识点
/** * ---结构体--- * * #include <sys/socket.h> * struct sockaddr { * unsigned short sa_family; * ...
- Centos 检查磁盘读写性能
启动Tomcat发现deploy war的速度明显变慢, 怀疑磁盘出问题 测试写入 [tomcat@localhost ~]$ dd if=/dev/zero of=kwxgd bs=64k coun ...
- 李学斌:论复杂系统中的应用间协作V3
说明 本文主要讨论了巨型复杂业务系统的一种构建思路,力图实现决策意志的快速.准确.一致的下传并简化实施成本提供实施效率.通过全业务领域的即时流程编排,实现全网业务IT系统的快速建设与迭代.本文所讲的方 ...
- ASP.NET中获取当日,当周,当月,当年的日期
ASP.NET中获取当日,当周,当月,当年的日期 在ASP.NET开发中,经常会碰到要获取当日,当周,当月,当年的日期. 以下将源码贴出来和大家分享. aspx中代码如下: <table ce ...
- java的守护线程与非守护线程
最近重新研究Java基础知识,发现以前太多知识知识略略带过了,比较说Java的线程机制,在Java中有两类线程:User Thread(用户线程).Daemon Thread(守护线程) ,(PS:以 ...
- Http概述(一)
Http使用的是可靠的数据传输协议,因此即使数据来自地球的另一端,也能够确保数据在传输过程中不会被损坏或产生混乱. 这样用户在访问信息时就不用担心其完整性了. web服务端与服务器是如何通信的 Web ...
- 拦截PHP各种异常和错误,发生致命错误时进行报警,万事防患于未然
在日常开发中,大多数人的做法是在开发环境时开启调试模式,在产品环境关闭调试模式.在开发的时候可以查看各种错误.异常,但是在线上就把错误显示的关闭. 上面的情形看似很科学,有人解释为这样很安全,别人看不 ...
- suggest插件实现下拉选择筛选
实现的效果展示: 代码如下: 1.需要引入jquery,bootstrap-suggest.js,bootstrap.min.css 2.html页面代码: <!DOCTYPE html> ...
- MongoDB数据库GroupBy查询使用Spring-data-mongondb的实现
以前用MongoDB数据库都是简单的查询,直接用Query就可以,最近项目中用到了分组查询,完全不一样.第一次遇到,搞了好几天终于有点那意思了. 先上代码: import java.math.BigD ...