美文网首页
Python三天紧急入门笔记(第一天)

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

作者: microkof | 来源:发表于2017-05-12 17:15 被阅读141次

    工作需要三天学会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
    

    数据类型

    • Numbers(数字)
    • String(字符串)
    • List(列表)
    • Tuple(元组)
    • Dictionary(字典)

    数字类型

    四种不同的数字类型:

    • int(有符号整型)
    • long(长整型[也可以代表八进制和十六进制])
    • float(浮点型)
    • complex(复数)

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

    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
    

    运算符

    没有全等运算符。

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

    逻辑运算符:

    • 逻辑与 a and b
    • 逻辑或 a or b
    • 逻辑非 not(a and b),相当于其他语言的叹号(!)

    成员运算符: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提前结束本次循环。

    相关文章

      网友评论

          本文标题:Python三天紧急入门笔记(第一天)

          本文链接:https://www.haomeiwen.com/subject/nsaztxtx.html