Python初探

运行python

Python程序是有解析器来执行的,解析器启动后将会出现一个命令提示,在此可以开始程序输入,进入简单的读入-求值循环。

In [1]: print "Hellow World"
Hellow World

Python的交互式模式是最有用的功能之一,以交互方式使用时,特殊变量_用于保存最后一次运行的结果,此变量只在交互模式下才有定义

In [2]: 1+2
Out[2]: 3
In [3]: _+2
Out[3]: 5

Python源文件是普通的文本文件,后缀通常是.py,字符#表示整行都是注释。在命令行中执行python文件,会启动解析器,并在控制窗口运行程序

>python test.py
Hello World

变量和算数表达式

python是一种动态类型的云烟,在执行过程中,可将变量名称绑定到不同的值,而且这些值可以属于不同的类型。赋值运算法的作用仅仅是在名称和值之间创建一种关联,尽管每种值都有一种类型,但是变量名称是无类型的。例如

In [2]: a = 1
In [3]: b = 0.1
In [4]: a = a * (a + b)
In [5]: a
Out[5]: 1.1

a的初始值是整型,但最后的结果是浮点型,这里不是a的类型改变了,而是a引用的值的类型变了。

一条语句的结束可以通过换行或者一行上使用分号来间隔开来。

while语句的对随后的表达式进行测试,然后决定是否执行主体,主体是由缩进来表示的,Python不会指定缩进量,只要在一个代码块中保持一致就可以了,最常见是使用4个空格。

在程序输出时,可利用字符串格式化运算符%控制对齐

In [6]: a = 1.2
In [7]: b = 1.01
In [8]: print "%.2f %.2f" % (a, b)
1.20 1.01

格式化字符串包含比普通文本和特殊的格式化字符串序列,如“%d“、 ”%s”和“%f”用于指定特定整型、字符串型、或浮点型数。特殊的字符包括用于指定宽度和精度的修饰符,如“%3d”将一个整数格式化为在一个宽度为3的列中右对齐,而“%.2f”将一个浮点型格式化为小数点后出现两位数字。也可以利用format()函数单独格式化每部分

In [16]: print format(a, ".3f"),format(b, ".2f")
1.200 1.01

format方法还可以用于一次格式化多个值

In [24]: print "{0:.3f} {1:.2f}".format(a, b)
1.200 1.01
In [25]: print "{1:.3f} {0:.2f}".format(a, b)
1.010 1.20

条件语句

if与else语句可以进行简单的测试,测试条件返回结果都是True或False

if a<b:
    print "a<b"
else:
    pass

主体用缩进表示,else子句是可选的,pass表示占位,空子句。使用不二类型的表达式or,and,not

if a < b and c=="1" and \
(age>4 or grade >90):
    print "a<b"
else:
    pass

上面的反斜杠\表示连接下一行的代码,当一行代码太长时,可利用行尾添加\
Python没有专门的switch和case语句,当有多个测试用例时,可以使用elif

if a < b:
    print "a<b"
elif a==b:
    pass
else:
    pass

文件输入和输出

打开并读取文件内容

# coding: UTF-8
file = open("link.txt")
line = file.readline()
while line:
    print line, #后面跟的','表示忽略换行符
    #print(line, end = '')
    line = file.readline()
file.close()

上述代码中第一行是进行编码声明,识别程序中的中文,注意的是声明必须与文件保存时用到的编码一致,否则很大概率会出现代码解析异常,现在的IDE一般会自动处理这种情况,但是文本编辑器就要小心。

open打开一个新的文件对象,调用该对象的方法readline()读取文件一行,包括换行符,读到文件结尾时返回空字符串。
如果程序在这样的数据集中进行循环,那么通常就称为迭代,可用专门的for语句来执行

for line in open("link.txt"):
    print line,

另外,print>>可以指定一个文件,将输出到文件中,使用’w’写方式打开文件

file = open("link.txt",'w')
print >>file, 'hello'

该语法只能在Python2中使用,也可以使用文件对象函数write()方法

file = open("link.txt",'w')
file.write('hello')

如果想读取控制台输入,则

# coding: UTF-8
import sys
sys.stdout.write("Enter your name:")
name = sys.stdin.readline()

在Python2中可以使用

# coding: UTF-8
name = raw_input("Enter your name:")

字符串

字符串可以有三种表示方法,单引号、双引号、三引号

a = 'Hello'
b = "Li"
c = """ny"""

单引号和双引号必须在一个逻辑行上,而三引号可以之间的内容都属于字符串,可以出现在多行。

In [1]: print """hello
   ...: world"""
hello
world

字符串存储在一个以0开始,使用整数索引的字符序列总,可以使用索引运算符来获取其中的一个字符

In [5]: a = "Hello world"
In [6]: a[4]
Out[6]: 'o'

使用切片运算符可以获取子字符串s[i:j]


                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值