《python基础教程》笔记之 基础知识
- 数字相关
在Python程序前加上 from __future__ import division 或者在解释器里面直接执行它,或者通过命令行运行Python时使用命令开关-Qnew,会使单斜线不再整除,如
>>> 1/2
0.5
而双斜线实现整除,如
>>> 1//2
0
- 输入
>>> x = input('x:')
- 模块
用import导入模块,然后按照“模块.函数”的格式使用这个模块的函数,如
>>> import math
>>> math.floor(23.96)
23.0
在使用了“form模块import函数”这种形式的import命令之后,就可以直接使用函数,而不需要模块名作为前缀了,如
>>> from math import sqrt
>>> sqrt(9)
3.0
CMath模块可以实现处理复数,如
>>> cmath.sqrt(-9)
3j
- 程序
在IDLE中,file->new file会弹出一个编辑窗口,在里面编辑如下
name = raw_input("what is your name")
print 'hello,' + name + '!'
然后file-save 保存为hell.py,然后F5运行,则在解释器中出现结果,如
>>> ================================ RESTART ================================
>>>
what is your name55
hello,55!
或者双击hell.py,则命令行窗口一闪而逝。
在代码中,#右边的一切都会被忽略,那部分即为注释。
- 字符串
反引号、str和repr是将值转换为字符串的三种方式,其中str会把值转换为合理形式的字符串,以便用户理解,而repr会创建一个字符串,以合法的平Python表达式的形式来表示值,如
tmp = 1000
print 'hello ' + `tmp`
print 'hello ' + str(tmp)
print 'hello ' + repr(tmp)
结果如下
hello 1000
hello 1000
hello 1000
input会假设用户输入的是合法的Python表达式(或多或少有些与repr函数相反的意思),raw_input会把所有的输入当做原始数据,然后将其放到字符串中,如
print 'hello ' + raw_input('your name:')
print 'hello ' + input('your name:')
结果如下
your name:55
hello 55
your name:55
Traceback (most recent call last):
File "E:/work/Code/python/hell.py", line 2, in <module>
print 'hello ' + input('your name:')
TypeError: cannot concatenate 'str' and 'int' objects
如果要书写一个跨多行的长字符串,可以使用三个引号代替普通引号,如
print '''This is a long string.
it continues here.
and it's not over yet.
"hello world!".
still here.'''
结果如下
This is a long string.
it continues here.
and it's not over yet.
"hello world!".
普通字符串也可以跨行,如果一行之中最后一个字符是反斜线,那么,换行本身就“转义”了,也就是被忽略了(同时适用于表达式),如
print 'This is a long string.\
it stop here.'
结果
This is a long string.it stop here.
原始字符串不会吧反斜线当做特殊字符,在元是字符串中输入的每个字符都会与书写的方式保持一致,如
print r'E:\work\Code\python' '\\'
结果如下
E:\work\Code\python\
《python基础教程》笔记之 基础知识的更多相关文章
- jQuery官方基础教程笔记(转载)
本文转载于阮一峰的博文,内容基础,结构清晰,是jquery入门不可多得的资料,非常好,赞一个. 阮一峰:jQuery官方基础教程笔记 jQuery是目前使用最广泛的javascript函数库. 据统计 ...
- Java基础教程:泛型基础
Java基础教程:泛型基础 引入泛型 传统编写的限制: 在Java中一般的类和方法,只能使用具体的类型,要么是基本数据类型,要么是自定义类型.如果要编写可以应用于多种类型的代码,这种刻板的限制就会束缚 ...
- Java基础教程:多线程基础(1)——基础操作
Java:多线程基础(1) 实现多线程的两种方式 1.继承Thread类 public class myThread extends Thread { /** * 继承Thread类,重写RUN方法. ...
- Java基础教程:反射基础
Java基础教程:反射基础 引入反射 反射是什么 能够动态分析类能力的程序称为反射. 反射是一种很强大且复杂的机制. Class类 在程序运行期间,Java运行时系统始终为所有对象维护一个被称为运行时 ...
- Java基础教程:多线程基础(4)——Lock的使用
Java基础教程:多线程基础(4)——Lock的使用 快速开始 Java 5中Lock对象的也能实现同步的效果,而且在使用上更加方便. 本节重点的2个知识点是:ReentrantLock类的使用和Re ...
- Java基础教程:多线程基础(2)——线程间的通信
Java基础教程:多线程基础(2)——线程间的通信 使线程间进行通信后,系统之间的交互性会更强大,在大大提高CPU利用率的同时还会使程序员对各线程任务在处理的过程中进行有效的把控与监督. 线程间的通信 ...
- Java基础教程:多线程基础——线程池
Java基础教程:多线程基础——线程池 线程池 在正常负载的情况瞎,通过为每一个请求创建一个新的线程来提供服务,从而实现更高的响应性. new Thread(runnable).start() 在生产 ...
- Java基础教程:多线程基础(6)——信号量(Semaphore)
Java基础教程:多线程基础(6)——信号量(Semaphore) 信号量 信号量(Semaphore)由一个值和一个指针组成,指针指向等待该信号量的进程.信号量的值表示相应资源的使用情况.信号量S≥ ...
- Java基础教程:多线程基础(5)——倒计时器(CountDownLatch)
Java基础教程:多线程基础(5)——倒计时器(CountDownLatch) 引入倒计时器 在多线程协作完成业务功能时,有时候需要等待其他多个线程完成任务之后,主线程才能继续往下执行业务功能,在这种 ...
- python基础教程笔记—即时标记(详解)
最近一直在学习python,语法部分差不多看完了,想写一写python基础教程后面的第一个项目.因为我在网上看到的别人的博客讲解都并不是特别详细,仅仅是贴一下代码,书上内容照搬一下,对于当时刚学习py ...
随机推荐
- 动态内存Treap
注意root的v要给一个很奇怪的数,null的s是0. #include <cstdio> #include <iostream> #include <algorithm ...
- 发布WebService到IIS和调用WebService
一:在项目上右键单击,选择发布,如图 二:可以单击重命名,自定义网站的名字,发布方式为:文件系统,目标路径为要发布的文件的位置,它需要放到IIS的目录下面的 三:打开IIS管理器,右键单击网站,添加网 ...
- 网页a标签:导航制作 怎么让鼠标经过A标签的时候显示块状背景?
文章出处:http://dongguan.seosrx.net/website/6.html
- 源代码管理工具TFS2013安装与使用
最近公司新开发一个项目要用微软的TFS2013进行项目的源代码管理,以前只是用过SVN,从来没有用过TFS,所以在网上百度.谷歌了好一阵子来查看怎么安装和配置,还好花了一天时间总算是初步的搞定了,下面 ...
- E - Swap - hdu 2819(简单二分图匹配)
题意:如果可以交换行列,问主对角线能不能全为1 分析:要想主对角线全为1很明显要有N个行列不想同的点就行了,可以用二分图匹配计算出来多能有几个.如果小与N就不能.输出要是对的就行,不必和答案一样 ** ...
- Git Push 不用再次输入用户名和密码方法
前言 在大家使用github的过程中,一定会碰到这样一种情况,就是每次要push 和pull时总是要输入github的账号和密码,这样不仅浪费了大量的时间且降低了工作效率.在此背景下,本文在网上找了两 ...
- js获取当前页面的url中id
function UrlSearch() { var name, value; var str = location.href; //获取到整个地址 var num = str.indexOf(&qu ...
- Hitting the 2100 parameter limit (SQL Server) when using Contains()
1down vote My solution (Guides -> List of Guid): List<tstTest> tsts = new List<tstTest&g ...
- 加入gitignore文件没有起作用怎么办
步骤一: 假设有未提交的文件先提交到Git. 步骤二: 在Git根文件夹下运行以下的Git命令: git rm -r --cached . git add . git commit -m " ...
- Android中的多媒体显示之图片缩放
一:图片OOM异常: 代码示例: public class MainActivity extends Activity { private ImageView iv_imageView; protec ...