Python Tutorial 学习(三)--An Informal Introduction to Python
3.1. 将Python用作计算器
3.1.1. Numbers 数
- 作为一个计算器,python支持简单的操作,
- '+','-','*','/'地球人都知道的加减乘除.
- ()可以用来改变优先级,同数学里面的四则运算优先级一样.
- '='用来建立起表达式和变量间的联系,通俗点讲就是赋值. Afterwards, no result is displayed before the next interactive prompt (没看明白...)
- 变量在使用之前必须被定义.
- 浮点型的支持:用python进行数学计算的时候,python会帮你处理小数(float)和整数(integer)间的关系(存在小数的时候,那么得到的结果必然是一个浮点型的).
- 复数的支持:复数虚步在python里面需要带上j或者J的后缀,实部非0的复数表示为 (real + imagj),或者也可以用complex(real, imag)函数来生成.
复数z的实部与虚部可以通过z.real和z.imag获取
类型转换函数float(), int() and long()对复数无效
用abs(z)获取它的magnitude (as a float) 或者通过 z.real 的方式获取它的实部
- 交互模式下(命令行),最后输出的一个表达式会被赋给变量 '_',所以有时候可以通过使用 '_' 简化操作
This variable should be treated as read-only by the user. Don’t explicitly assign a value to it — you would create an independent local variable with the same name masking the built-in variable with its magic behavior.
3.1.2. Strings 字符串
除了数之外,Python同样的有多种处理字符串的方法.
字符串的三种表达方式:
- 'This is a string'
- "This is another string"
- """This is also a string"""
扩展一下
'Hello I'm zhangsan' Wrong
'Hello I\'m zhangsan' Right
"Hello I'm zhangsan" Right
此外,还有一种字符串的表示需要提一下,那就是
r'this is a string and something like \n will not work it you wanna to converted it to newline'
r '' 也就是raw的意思,被其包围的字符串都会原样的输出,像\n \t等等的这时候就不会被转换成换行和回车,但是直接的回车换行就会生效,比如说这样
print r'Hello, I am \
zhangsan'
输出会是这样的
Hello, I am
zhangsan
字符串是可以使用 + 和 * 操作的
比如 'this is a string'和 'this is ' + 'a string' 得到的结果是一样的
'aaa' 同样的也可以表示为 'a' * 3
同list一样的,string也可以切片,比如说
print 'abcde'[:3] # abc
print 'abcdefg'[0:4:2] #ac
for w in 'words':
print w,
#output:
w o r d s (注意我在print后面用了一个逗号,这样不会换行)
len('abc') 得到的结果是字符串 'abc' 的长度(3)
所以上面的一个for循环也可以这样:
for i in range(len('words')):
print 'words'[i],
这会得到同样的结果
3.1.3. Unicode Strings
定义一个Unicode字符串简单的同定义普通字符串一样
Creating Unicode strings in Python is just as simple as creating normal strings:
由于太简单了,所以我就不写了(哈哈,其实是我不知道怎么去说....)
3.1.4. Lists
序列作为Python的基本格式之一,简直是妙极了.这里简单的用几个小例子来介绍一下list的使用方法.
定义一个序列,看起好像有点复杂,其实不复杂.
lst = [0, 1, 2, 3, 4, 5, 'a', 'b', [8, 888], '9', {'10': 10, 10: 100}]
lst[1] # 1 一个整数
lst[8] # [8, 888] 一个序列
lst[9] # '9' 一个字符串
lst[10] # {'10': 10, 10: 100} 一个字典
看起来好像很灵活的样子,就是这么任性.
list的切片
lst[2:6] #[2, 3, 4, 5, 'a']
lst[2:6:2] #[2, 4, 'a']
lst[-1:0:-1] #[{'10': 10, 10: 100}, '9', [8, 888], 'b', 'a', 5, 4, 3, 2, 1] 其实就是一个逆序
lst[-1:0:-2] #[{'10': 10, 10: 100}, [8, 888], 'a', 4, 2]
len(lst) # 10
3.2. First Steps Towards Programming
Python可不仅仅是用来做加减乘除的,比如,这里我们可以用它来实现一个斐波那契数列(一对兔子,三个月生小兔子.........)
>>> # Fibonacci series:
... # the sum of two elements defines the next
... a, b = 0, 1
>>> while b < 10:
... print b,
... a, b = b, a+b
#output
1 1 2 3 5 8
关于这个函数,后面会有更为详细的介绍(直接定义了一个函数出来了)
Python Tutorial 学习(三)--An Informal Introduction to Python的更多相关文章
- [译]The Python Tutorial#3. An Informal Introduction to Python
3. An Informal Introduction to Python 在以下示例中,输入和输出以提示符(>>>和...)的出现和消失来标注:如果想要重现示例,提示符出现时,必须 ...
- Python Tutorial 学习(八)--Errors and Exceptions
Python Tutorial 学习(八)--Errors and Exceptions恢复 Errors and Exceptions 错误与异常 此前,我们还没有开始着眼于错误信息.不过如果你是一 ...
- Python基础学习三
Python基础学习三 1.列表与元组 len()函数:可以获取列表的元素个数. append()函数:用于在列表的最后添加元素. sort()函数:用于排序元素 insert()函数:用于在指定位置 ...
- Python Tutorial 学习(四)--More Control Flow Tools
4.1 if 表达式 作为最为人熟知的if.你肯定对这样的一些表达式不感到陌生: >>> x = int(raw_input("Please enter an intege ...
- Python Tutorial 学习(六)--Modules
6. Modules 当你退出Python的shell模式然后又重新进入的时候,之前定义的变量,函数等都会没有了. 因此, 推荐的做法是将这些东西写入文件,并在适当的时候调用获取他们. 这就是为人所知 ...
- Python Tutorial 学习(二)--Using the Python Interpreter
Using the Python Interpreter 2.1. Invoking the Interpreter The Python interpreter is usually install ...
- Python Tutorial 学习(一)--Whetting Your Appetite
Whetting Your Appetite [吊你的胃口]... 这里就直接原文奉上了... If you do much work on computers, eventually you fin ...
- Python Tutorial 学习(七)--Input and Output
7. Input and Output Python里面有多种方式展示程序的输出.或是用便于人阅读的方式打印出来,或是存储到文件中以便将来使用.... 本章将对这些方法予以讨论. 两种将其他类型的值转 ...
- Python基础学习参考(一):python初体验
一.前期准备 对于python的学习,首先的有一个硬件电脑,软件python的运行环境.说了一句废话,对于很多初学者而言,安装运行环境配置环境变量的什么的各种头疼,常常在第一步就被卡死了,对于pyth ...
随机推荐
- Centos 下安装MongoDB
Centos 下安装MongoDB 一.安装方法 方法(一) 1 配置包管理系统 创建/etc/yum.repos.d/mongodb.repo 文件,当然我们使用的是64位系统,32位的情况不再考 ...
- 错误137(net::ERR_NAME_RESOLUTION_FAILED):未知错误的解决办法
现象:之前遇到一些新闻网站打不开的情况...而让异地的朋友打开却能打开.. 解决①:配置dns ,因为公司内部的网络是桥接的 我们dns服务器默认是192.168.1.1 ,dns被封锁,直接导致一些 ...
- 细谈Java
重载:相同函数名,不同参数. 重写(覆写):父类和子类之间的,子类重写了父类的方法. java的多态:重载+覆写 1. Main方法: 是public的,也是static,也是void的,参 ...
- MySQL基本配置
>>添加环境变量 把MySQL Server的bin目录添加到系统path中. >>MySQL启动和停止命令 net start mysql56 net stop mysql5 ...
- HIVE自定义函数 UDF
自定义my_md5hash 具体hive源码怎么调用看我另外一篇博客 package udf.hive.myudf; import org.apache.commons.codec.digest.Di ...
- 10881 - Piotr's Ants(排序)
题目链接:10881 - Piotr's Ants 题目大意:在一个长为L的木棒上有n只蚂蚁,给出蚂蚁的初始位置以及方向,问说移动T秒后各个蚂蚁的位置以及状态,如果两只蚂蚁在移动的过程中相撞,则会同时 ...
- 如何在word2007中并排查看对比显示两个文档
使用word编辑或修改文件时,有时会需要对两个文档进行对比,此时就应该使用并排查看功能. 点击“视图”菜单中的“并排查看” 所打开的两个文档就会同时打开,并排显示 可点击“同步滚动”设置或取消同步滚动
- APP安全环节缺失,手游运营商怎样应对APP破解困境
2013年手游行业的规模与收入均实现了大幅增长,发展势头强劲.然而,在手游快速发展的同一时候,因为监管.审核等方面存在着漏洞,手机游戏软件被破解后注入恶意代码.盗取用户財产.窃取用户设备信息的现象屡见 ...
- ssss
18:15 2013/6/18 未结束的事情1 应用API接口切换2 03in.com 项目管理授权 软件中不成功3 党校考核时间 段列出所有 10:51 2013/6/20 daili 应用修改1 ...
- GDB技巧整理
https://blog.atime.me/note/gdb-tricks.html 整理常用的gdb技巧. 常用命令 常用的gdb命令... 启动gdb 直接运行 gdb --args prog a ...