python用缩进(四个空格,不是teble)来区分代码块

1.

coding=utf-8    字符编码,支持汉字

#!/usr/bin/env python
# coding=utf-8
print "hello world"
print "你好 世界"

2.
字面常量:顾名思义,就是看到是什么就是什么
变量命名:字母或者下划线或者数字组成,不过数字不能作为开头,关键字不能作为变量名(例如for,if等)
3.
数据类型:强类型(不允许非同类数据之间进行运算)
type(变量名)    输出变量类型    例如:
>>> v1 = 1
>>> v2 = 2
>>> v1 + v2
3
>>> v3 = "This is 3"
--整型v1和字符型v3相加报错
>>> v1 + v3

Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    v1 + v3
TypeError: unsupported operand type(s) for +: 'int' and 'str'
>>> type(v3)
<type 'str'>
>>> type(v1)
<type 'int'>
--输出字符串某个字符,数组方式
>>> v3[0]
'T'
>>> v3[1]
'h'

py中单引号和双引号是等价的,例如:
>>> 'ture'=="ture"
True

4.
类型转换:
int|float(需要转换的值或者变量),例如:
>>> v1=1
>>> float(v1)
1.0

这里v1本来是整型1,转换后为1.0

5.对象,py中万物皆对象
6.运算表达式
6-1.数学运算符:+ 
整型相除得到的依然是整型,而不是浮点型
而整型与浮点数相除,得到的就是浮点型,不过依然会损失一部分精度,例如
--除法运算/
>>> 10 / 3
3
>>> 10 / float(3)
3.3333333333333335
--取整运算//
>>> 10 // float(3)
3.0
--取模运算
>>> 10 % 3
1
--乘方运算
>>> 10 ** 3
1000
--加法运算(单独存在是正号)
>>> 10 + 3
13
--减法运算(单独存在是负号)
>>> 10 - 3
7


6-2.位操作运算符
--左移运算符<<,意思就是将值转为二进制,并且向左移动三位,并将移动的三位用0补全,例如:2的二进制是10,左移3位是10000,即16.
>>> 2 << 3
16
--右移运算符>>,和左移解法一样,只不过是移动几位就删除几位.
>>> 16 >> 2
--按位与运算&,将值转为二进制,然后两个二进制同位进行与运算
>>> 3 & 2
2
--或运算|
>>> 3 | 2
3
--异或运算^
>>> 3 ^ 2
1
--取反运算~,将值转为二进制,然后+1,取反,例如:3的二进制是11,那么转化的式子-->-(11+1)=-(100)=-4
>>>~3
-4


--例如:~1-~3=(~1)-(~3)=(-2)-(-4)=2
>>> ~1-~3
2

6-3.比较运算符 < > <= >= == !=
6-4.逻辑运算符 and or not
6-5.赋值运算符 =
6-6.其他运算符
6-7.运算符优先级
单目运算符高于双目运算符,not是例外
算数运算符高于位运算符,~是例外
>>> 1+2<<2
12
>>> 2<<2+1
16

位运算符高于比较运算符
比较运算符高于逻辑运算符
建议用()来强制划分优先级,便于代码易理解

7.分支结构
7-1.if语句
基本格式:if condition:
           expression
if 3<5:
    print "This is 3"

This is 3


7-2. else子句
py中一定要注意语句级别,每个级别的间隔都是4个空格,例如第二个
if 3<5:
    print "ture"
else:
    print "false"

   
ture
>>> if 3<5:
        if 3>2:
            print "ture"
        else:
            print "false"

       
ture


7-3.elif语句
elif语句会在条件判定成功的那一刻停止,不会继续执行之后的elif,例如:这里只输出了一个ture
if 3>5:
    print "false"
elif 3>2:
    print "ture"
elif 3>1:
    print "ture"

   
ture


8.循环体
8-1.while语句
>>> a=3
>>> while a <= 10:
    print a
    a += 1 #a = a + 1

   
3
4
5
6
7
8
9
10


8-2.for语句,和c语言差别比较大
格式如下:
for 变量 in 迭代器
迭代器是什么,就是一个函数,例如range()
range(1,10)
[1, 2, 3, 4, 5, 6, 7, 8, 9]
range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
range(0,10,2)
[0, 2, 4, 6, 8]
#一个完整的for循环例子:
for x in range(10):
    print x

   
0
1
2
3
4
5
6
7
8
9


另外,迭代器不要轻易进行修改,否则会出现意想不到的问题,例如:在下面这个例子中,li充当了迭代器的作用,在第一次循环中后,我们赋予了li=[1,2,3],但是之后却发现x依然获取的是0~9[即10次迭代],而并不是1~3[3次迭代].
li = range(10)
for x in li:
    print x
    print li
    li=[1,2,3]

   
0
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
1
[1, 2, 3]
2
[1, 2, 3]
3
[1, 2, 3]
4
[1, 2, 3]
5
[1, 2, 3]
6
[1, 2, 3]
7
[1, 2, 3]
8
[1, 2, 3]
9
[1, 2, 3]


8-3.break语句,跳出整个迭代循环,不影响外部迭代循环
for x in li:
    print x
    if x == 5:
        break

   
0
1
2
3
4
5

例子2:
x第一次循环体中[y进行10次循环+换行],但是在第5次循环被中断,故输出0-5,那么x的10次循环就是输出10次0-5
print 后加,可以将换行改为空格,print后什么都不跟,则输出换行
for x in range(10):
    for y in range(10):
        print y,
        if y == 5:
            break
    print

   
0 1 2 3 4 5
0 1 2 3 4 5
0 1 2 3 4 5
0 1 2 3 4 5
0 1 2 3 4 5
0 1 2 3 4 5
0 1 2 3 4 5
0 1 2 3 4 5
0 1 2 3 4 5
0 1 2 3 4 5


8-4.continue子句,跳过当前循环,不影响整个迭代循环的其他循环
例如:当x等于5时,跳出本次x=5的循环,但是不影响之后的迭代循环.
for x in range(10):
    if x == 5:
        continue
    print x
        for y in range(10):
        print y,
    print

   
0
0 1 2 3 4 5 6 7 8 9
1
0 1 2 3 4 5 6 7 8 9
2
0 1 2 3 4 5 6 7 8 9
3
0 1 2 3 4 5 6 7 8 9
4
0 1 2 3 4 5 6 7 8 9
6
0 1 2 3 4 5 6 7 8 9
7
0 1 2 3 4 5 6 7 8 9
8
0 1 2 3 4 5 6 7 8 9
9
0 1 2 3 4 5 6 7 8 9


8-5.循环体中的else子句
for x in range(10):
    if x > 10:
    break
else:
    print "x > 10"

   
x > 10


9.小例子1:
预先设定一个数字,判定用户输入数字与预设数字的区别,并输出对应信息
raw_input()和input()最大的区别在于,前者会将所有输入类型改变为字符串类型,后者则认为自己需要一个合法的表达式,比如说输入字符串,则必须加引号(获取abc,则需要输入"abc")
#!/usr/bin/env python
# coding=utf-8
numA = 100
numB = input("请输入一个数字:")
if numA == numB:
    print "你获得胜利!"
elif numB > numA:
    print "你的数字大于预设数字!"
elif numB < numA:
    print "你的数字小于预设数字!"




python之第一个例子hello world的更多相关文章

  1. MXNet学习~第一个例子~跑MNIST

    反正基本上是给自己看的,直接贴写过注释后的代码,可能有的地方理解不对,你多担待,看到了也提出来(基本上对未来的自己说的),三层跑到了97%,毕竟是第一个例子,主要就是用来理解MXNet怎么使用. #导 ...

  2. python修炼第一天

    Python修炼第一天 新的开始:不会Python的运维,人生是不完整的. 为了我的人生能够完整,所以我来了!今后跟着太白金星师傅学习功夫,记录一下心得,以便日后苦练. 一 Python的历史: Py ...

  3. python 学习第一天

    第一天接触python,首先感谢老男孩的授课老师!!!! 今天的知识点: 1.首先接触到python的第一个模块getpass(这边有点迷茫,不能确定的是这个getpasss是一个库还是一个模块)ge ...

  4. Python 编程第一步

    Python  编程第一步 在前面的教程中我们已经学习了一些 Python3 的基本语法知识,下面我们尝试来写一个斐波纳契数列. # Fibonacci series: 斐波纳契数列 # 两个元素的总 ...

  5. python学习 第一章(说不定会有第零章呢)one day

    ------------恢复内容开始------------ 一.啥是python python是吉尔·范罗苏姆于1989年开发的一个新的脚本解释程序,是ABC语言的一种继承. 二.python的特点 ...

  6. MXNet学习-第一个例子:训练MNIST数据集

    一个门外汉写的MXNET跑MNIST的例子,三层全连接层最后验证率是97%左右,毕竟是第一个例子,主要就是用来理解MXNet怎么使用. #导入需要的模块 import numpy as np #num ...

  7. ElasticSearch 5学习(5)——第一个例子(很实用)

    想要知道ElasticSearch是如何使用的,最快的方式就是通过一个简单的例子,第一个例子将会包括基本概念如索引.搜索.和聚合等,需求是关于公司管理员工的一些业务. 员工文档索引 业务首先需要存储员 ...

  8. emberjs学习一(环境和第一个例子)

    code { margin: 0; padding: 0; white-space: pre; border: none; background: transparent; } code, pre t ...

  9. python抓取网页例子

    python抓取网页例子 最近在学习python,刚刚完成了一个网页抓取的例子,通过python抓取全世界所有的学校以及学院的数据,并存为xml文件.数据源是人人网. 因为刚学习python,写的代码 ...

随机推荐

  1. destoon实现资讯信息前面调用它所属分类的方法

    有时候我们需要在一些信息前面添加他所属的分类,让他显示出来,本文介绍的方法虽然有些不具有通用性,但是可以实现这一效果,代码如下,供大家参考: <!--{php null=tag("mo ...

  2. iOS中构造函数与析构函数

    一.构造函数 在OC中凡是已init开头的函数我们都称之为构造函数,在声明构造函数的时候,不带参数的一般直接声明为“-(id)init”,带参数的一般声明为“-(id)initWith...”. 1 ...

  3. Nginx 内置变量,细化规则,真实IP获取及限制连接请求

    希望下周测试之后能用起来!!!感觉很有用的. http://www.bzfshop.net/article/176.html http://www.cr173.com/html/19761_1.htm ...

  4. Buffer lock

    buffer lock    Oracle 提供非常精确,有效的Row Level Lock机制,多个用户同时修改数据时,为了保护数据. 以块为单位挂起锁的情况不会发生,但这不太正确. 以块为单位的锁 ...

  5. Hive 12、Hive优化

    要点:优化时,把hive sql当做map reduce程序来读,会有意想不到的惊喜. 理解hadoop的核心能力,是hive优化的根本. 长期观察hadoop处理数据的过程,有几个显著的特征: 1. ...

  6. [转] Hive 内置函数

    原文见:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF 1.内置运算符1.1关系运算符 运算符 类型 说明 A ...

  7. bootstrap 兼容IE8设置

    <!--[if lt IE 9]> <script src="//cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js" ...

  8. Spring Tool Suit 在Eclipse上的安装

    登录http://spring.io/tools/sts/all 下载所需的Spring Tool Suit安装包 我用的是springsource-tool-suite-3.6.1.RELEASE- ...

  9. c++之 printf 打印内容

    该代码全部在Visual Studio 2015中编写,有关VS2015的安装流程后期在写相关的博文 首先让我们来输出一下hello, world! 1.首先新建一个main.cpp的文件,然后在该文 ...

  10. Android开源库集锦

    一.兼容类库 ActionBarSherlock : Action Bar是Android 3.0后才开始支持的,ActionBarSherlock是让Action Bar功能支持2.X后的所有平台, ...