Python三天紧急入门笔记(第一天)

2017-05-12  本文已影响141人  microkof

工作需要三天学会Python,好吧,试试。

前言

安装和基本常识了解都以最快速了解,开发环境PyCharm赶紧装上,其他常识都等有需要学习的时候再说。为了最省事,只在PyCharm里运行、调试程序,不碰控制台。

输出中文

#!/usr/bin/python
#coding=utf-8

print "你好,世界";

行和缩进

缩进一律用4空格,不多说。

运算如果折行,需要加\

aa = 1
bb = 2
cc = aa + \
     bb
print cc // 得3

Python空行

函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。空行并不是Python语法的一部分,跟其他语言一样,为了代码分界。记得多空行就行了。

等待用户输入

其实这不算入门功能,但是其实很有用,用于人机交互。这里先只提一句:

raw_input("\n\nPress the enter key to exit.")

"\n\n"在结果输出前会输出两个新的空行。一旦用户按下 enter(回车) 键退出,按其他键就把内容显示出来。

Print

x="a"
y="b"
# 换行输出
print x
print y

print '---------'
# 不换行输出,x和y中间会有空格
print x,
print y,

变量

没任何标记,没有var,没有美元符号标记,只要有赋值符号,前面就是变量名。

连续赋值:

a = b = c = 1 # 三个变量指向相同的内存空间

分别赋值:

a, b, c = 1, 2, "john"

删除变量

del var_a, var_b

数据类型

数字类型

四种不同的数字类型:

其中日常主要用整形和浮点型。

random()随机数函数
uniform(x, y)范围随机数
shuffle(lst)随机排序函数

字符串

s = 'ilovepython'
s[1:5] # 得到love

加号 + 是字符串连接运算符,跟js一样。星号 * 是重复操作,就是把字符串变量的值重复输出N次:

s = 'ilovepython'
b = s * 3
print b # 得到ilovepythonilovepythonilovepython

字符串格式化:

print "My name is %s and weight is %d kg!" % ('Zara', 21)

得到:

My name is Zara and weight is 21 kg!

虽然python字符串格式化符号有13种,但其实只有两种常用,就是%s和%d。

三引号:

hi = '''hi 
there'''
print hi

得到两行字

hi
here

三引号让程序员从引号和特殊字符串的泥潭里面解脱出来,自始至终保持一小块字符串的格式是所谓的WYSIWYG(所见即所得)格式的。

一个典型的用例是,当你需要一块HTML或者SQL时,这时用字符串组合,特殊字符串转义将会非常的繁琐。

string对象,有一大堆的方法和属性,参见http://www.runoob.com/python/python-strings.html

Python列表

Python 中使用最频繁的数据类型,相当于数组。

用[头下标:尾下标]可以截取相应的列表。

print ['runoob', 786, 2.23, 'john', 70.2, 123, 'john'][2:4]

加号(+)是列表连接运算符,星号(*)是重复操作,就跟操作字符串一样。

列表的内置函数和方法,参见http://www.runoob.com/python/python-lists.html

Python元组

元组是另一个数据类型,类似于List(列表)。

元组用"()"标识。内部元素用逗号隔开。但是元组不能二次赋值,等于只读列表。

元组的内置函数和方法,参见http://www.runoob.com/python/python-tuples.html

Python 字典

字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。字典相当于js语言的对象。

两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

tinydict = {'name': 'john', 'code': 6734, 'dept': 'sales'}

print tinydict['code']  # 输出键为'code' 的值
print tinydict.keys()  # 输出所有键
print tinydict.values()  # 输出所有值

字典的内置函数和方法,参见http://www.runoob.com/python/python-dictionary.html

数据类型转换

数据类型的转换,只需要将数据类型作为函数名即可。

这里有几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值。http://www.runoob.com/python/python-variable-types.html

type内置函数用于查看变量的数据类型

print type(['runoob', 786, 2.23, 'john', 70.2, 123, 'john'][2:4])

得到<type 'list'>

print type(type(['runoob', 786, 2.23, 'john', 70.2, 123, 'john'][2:4]))

得到``<type 'type'>`,说明type返回的类型是type,而不是字符串。

还可以用 isinstance 来判断数据类型

a = 111
isinstance(a, int)
# 得到True

运算符

没有全等运算符。

减法赋值运算符(-=)等赋值运算符,跟其他语言一致。

逻辑运算符:

成员运算符:in跟js语言一致,如果在指定的序列中找到值返回 True,否则返回 False。not in跟in相反。
···
list = [1, 2, 3, 4, 5 ];
a = 6

print a in list # 得到False
print a not in list # 得到True
···

条件语句

跟其他语言的写法区别在于,条件语句不用括号包裹,而且后面有一个冒号。else后面也要有冒号。

其他语言的else if在这里是elif,就四个字符。

python 并不支持 switch 语句。

其他语言的“逻辑与”(&&)在py里是and,“逻辑或”(||)在py里是or。

执行语句用四个空格缩进。多个语句写成多行。

if True:
    print "True"
    print "haha"
else:
    print "False"

条件语句可以换行写,但这时候要用括号括起来,py会自动解析成一行。

if (True and
    True):
    print "True"
else:
    print "False"

循环语句

Python有for循环和while循环,用法同其他语言,没有do..while循环。

while循环

count = 0
while count < 9:
    print 'The count is:', count
    count = count + 1

print "Good bye!"

打印出:

The count is: 0
The count is: 1
The count is: 2
The count is: 3
The count is: 4
The count is: 5
The count is: 6
The count is: 7
The count is: 8
Good bye!

注意这里空行和缩进的必要性,因为没有其他语言的大括号来包裹,只能用空行和回退缩进来表示脱离上述循环。回退缩进是必须的,空行不是必须,只是为了直观。

while 后面接 else 语句

表示跳出循环之后要执行什么。

for ... in ... 循环

for letter in 'Python':     # 遍历字符串
   print '当前字母 :', letter
 
fruits = ['banana', 'apple',  'mango']
for fruit in fruits:        # 遍历列表,也就是遍历数组
   print '当前水果 :', fruit
 
print "Good bye!"

打印:

当前字母 : P
当前字母 : y
当前字母 : t
当前字母 : h
当前字母 : o
当前字母 : n
当前水果 : banana
当前水果 : apple
当前水果 : mango
Good bye!
循环后接else语句

这是一种比较深的用法,将来遇到了再回来说吧。参考http://www.runoob.com/python/python-for-loop.html

循环控制语句一:break 语句

for letter in 'Python':  # 遍历字符串
    if letter == 'h':
        break # 到h的时候就终止了,也不会打印h
    print '当期字母 :', letter

得到

当期字母 : P
当期字母 : y
当期字母 : t
var = 10
while var > 0:
    print '当期变量值 :', var
    var = var - 1
    if var == 5: 
        break # 当变量 var 等于 5 时退出循环

得到

当期变量值 : 10
当期变量值 : 9
当期变量值 : 8
当期变量值 : 7
当期变量值 : 6

循环控制语句之二:continue 语句

continue 语句跳出本次循环,而break跳出整个循环。

continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。

也就是说,break终止for的剩余循环,continue提前结束本次循环。

上一篇下一篇

猜你喜欢

热点阅读