• python基础学习笔记(四)


    学到这里已经很不耐烦了,前面的数据结构什么的看起来都挺好,但还是没法用它们做什么实际的事。

    基本语句的更多用法

    使用逗号输出

    print 'age:',25
    age: 25
    如果想要同时输出文本和变量值,却又不希望使用字符串格式化的话,那这个特性就非常有用了:

    复制代码

    name = 'chongshi'
    salutation = 'Mr'
    greeting = 'Hello.'
    print greeting,salutation,name
    Hello. Mr chongshi
    复制代码

    模块导入函数

    从模块导入函数的时候,可以使用

    import somemodule

    或者

    form somemodule immport somefunction

    或者

    from somemodule import somefunction.anotherfunction.yetanotherfunction

    或者

    from somemodule import *

    最后一个版本只有确定自己想要从给定的模块导入所有功能进。

    如果两个模块都有open函数,可以像下面这样使用函数:

    module.open(...)

    module.open(...)

    当然还有别的选择:可以在语句末尾增加一个as子句,在该子句后给出名字。

    复制代码

    import math as foobar #为整个模块提供别名
    foobar.sqrt(4)
    2.0

    from math import sqrt as foobar #为函数提供别名
    foobar(4)
    2.0
    复制代码

    赋值语句

    序列解包

    复制代码

    x,y,z = 1,2,3
    print x,y,z
    1 2 3

    x,y=y,x
    print x,y,z
    2 1 3
    复制代码
    可以获取或删除字典中任意的键-值对,可以使用popitem方

    复制代码

    scoundrel ={'name':'robin','girlfriend':'marion'}
    key,value = scoundrel.popitem()
    key
    'name'

    value
    'robin'
    复制代码
    链式赋值

    链式赋值是将同一个值赋给多个变量的捷径。

    复制代码

    x = y = 42

    同下效果:
    y = 42
    x = y
    x
    42
    复制代码
    增理赋值

    复制代码

    x = 2
    x += 1 #(x=x+1)
    x = 2 #(x=x2)
    x
    6
    复制代码

    控制语句

    if 语句:

    复制代码
    name = raw_input('what is your name?')
    if name.endswith('chongshi'):
    print 'hello.mr.chongshi'

    输入
    what is your name?chongshi #这里输入错误将没有任何结果,因为程序不健壮

    输出
    hello.mr.chongshi
    复制代码

    else子句

    复制代码
    name = raw_input('what is your name?')
    if name.endswith('chongshi'):
    print 'hello.mr.chongshi'
    else:
      print 'hello,strager'

    输入
    what is your name?hh #这里输和错误

    输出
    hello,strager
    复制代码

    elif 子句

    它是“else if”的简写

    复制代码
    num = input('enter a numer:')
    if num > 0:
    print 'the numer is positive'
    elif num < 0:
    print 'the number is negative'
    else:
      print 'the nuber is zero'

    输入
    enter a numer:-1

    输出
    the number is negative
    复制代码

    嵌套

    下面看一下if嵌套的例子(python是以缩进表示换行的)

    复制代码
    name = raw_input('what is your name?')
    if name.endswith('zhangsan'):
    if name.startswith('mr.'):
    print 'hello.mr.zhangsan'
    elif name.startswith('mrs.'):
    print 'hello.mrs.zhangsan'
    else:
    print 'hello.zhangsan'
    else:
    print 'hello.stranger'
    复制代码
      如果输入的是“mr.zhangsan”输出第一个print的内容;输入mrs.zhangshan,输出第二个print的内容;如果输入“zhangsan”,输出第三个print的内容;如果输入的是别的什么名,则输出的将是最后一个结果(hello.stranger)

    断言

    如果需要确保程序中的某个条件一定为真才能让程序正常工作的话,assert 语句可以在程序中设置检查点。

    复制代码

    age = 10
    assert 0 < age < 100
    age = -1
    assert 0 < age < 100 , 'the age must be realistic'

    Traceback (most recent call last):
    File "<pyshell#8>", line 1, in
    assert 0 < age < 100 , 'the age must be realistic'
    AssertionError: the age must be realistic
    复制代码

    循环语句

    打印1到100的数(while循环)

    复制代码
    x= 1
    while x <= 100:
    print x
      x += 1

    输出
    1
    2
    3
    4
    .
    .
    100
    复制代码
    再看下面的例子(while循环),用一循环保证用户名字的输入:

    复制代码
    name = ''
    while not name:
    name = raw_input('please enter your name:')
    print 'hello.%s!' %name

    输入
    please enter your name:huhu

    输出
    hello.huhu!
    复制代码
    打印1到100的数(for 循环)

    复制代码
    for number in range(1,101):
      print number

    输出
    1
    2
    3
    4
    .
    .
    100
    复制代码
    是不是比while 循环更简洁,但根据我们以往学习其它语言的经验,while的例子更容易理解。

    一个简单for 语句就能循环字典的所有键:

    复制代码
    d = {'x':1,'y':2,'z':3}
    for key in d:
      print key,'corresponds to',d[key]

    输出
    y corresponds to 2
    x corresponds to 1
    z corresponds to 3
    复制代码

    break语句

    break 用来结束循环,假设找100以内最大平方数,那么程序可以从100往下迭代到0,步长为-1

    复制代码
    from math import sqrt
    for n in range(99,0,-1):
    root = sqrt(n)
    if root == int(root):
    print n
    break

    输出
    81
    复制代码

    continue 语句

    continue结束当前的迭代,“跳”到下一轮循环执行。

    复制代码
    while True:
    s=raw_input('enter something:')
    if s == 'quit':
    break
    if len(s) < 3:
    continue
      print 'Input is of sufficient length'

    输入
    enter something:huzhiheng #输入长度大于3,提示信息
    Input is of sufficient length
    enter something:ha #输入长度小于3,要求重输
    enter something:hah #输入长度等于3,提示信息
    Input is of sufficient length
    enter something:quit #输入内容等于quit,结果

  • 相关阅读:
    Codeforces Round #581 (Div. 2)
    Codeforces Round #605 (Div. 3)
    cin,cin.get(),cin.getline(),getline()
    容斥原理原理
    词法分析器
    Web学习开始。
    Convex hull凸包
    对max_flow做一个总结
    Vue中动画封装
    Vue中的动画特效
  • 原文地址:https://www.cnblogs.com/wang1018-kuiying/p/14499212.html
Copyright © 2020-2023  润新知