精华内容
下载资源
问答
  • 赋值语句

    2021-01-09 19:54:49
    赋值语句 赋值语句用于将名称绑定或重新绑定到特定值,以及修改属性或可变对象的成员项。 赋值语句使用赋值操作符和增强赋值操作符。详见 操作符概述。 # 将值 1 绑定到变量 a a = 1 print('a =', a) # 变量 a 重新...

    赋值语句

    赋值语句用于将名称绑定或重新绑定到特定值,以及修改属性或可变对象的成员项。

    赋值语句使用赋值操作符和增强赋值操作符。详见 操作符概述

    # 将值 1 绑定到变量 a
    a = 1
    print('a =', a)
    # 变量 a 重新绑定值 'a'
    a = 'a'
    print('a =', a)
    
    a = 1
    a = a
    

    同时进行多个值多个名称绑定,值和名称数量要相等:

    # 一个名称时,右边为元组
    a = 1,2,3,4
    a
    
    (1, 2, 3, 4)
    
    # 多个名称
    a,b,c,d = 1,[2,3],4,5
    f'a={a},b={b},c={c},d={d}'
    
    'a=1,b=[2, 3],c=4,d=5'
    
    # 可迭代对象拆包,则需要更多名称
    a,b,c,d,e = 1,*[2,3],4,5
    f'a={a},b={b},c={c},d={d},e={e}'
    
    'a=1,b=2,c=3,d=4,e=5'
    

    赋值一般左右两边一一对应 “同时” 赋值,但赋值给变量的多项集时可能不一样(例如列表的某一项):

    x = [0,1]
    i = 0
    i, x[i] = 1, 2 
    f'x={x},i={i}'
    
    'x=[0, 2],i=1'
    

    修改属性或可变对象的成员项:

    # 新增属性
    class A:
        x = 1
    a = A()
    
    # 右边的 a.x 是访问类属性
    # 左边的 a.x 是新增实例属性, 值为类属性值 + 1
    a.x = a.x + 1 
    a.x, A.x
    
    (2, 1)
    
    # 修改列表项
    a = [1,2,3]
    a[0] = [0,1]
    a
    
    [[0, 1], 2, 3]
    
    # 修改或新增字典项
    d = {'a':1}
    d['a'] = 10
    d['b'] = 2
    d
    
    {'a': 10, 'b': 2}
    

    赋值操作符 =,可以进行连续赋值,绑定多个名称,但赋值语句非表达式语句,不能被求值,因此不能被括号包围或分隔:

    a = b = c = 1
    a,b,c
    
    (1, 1, 1)
    
    a = (b = c = 1)
    
      File "<ipython-input-40-5dae496e91ce>", line 1
        a = (b = c = 1)
               ^
    SyntaxError: invalid syntax
    

    不可变容器的增强赋值操作,是重新绑定对象;可变容器的增强赋值操作是增、删、改成员项:

    s = '123'
    print(id(s),s)
    # 因为不可变,相当于新建了一个字符串 '1234' 重新绑定 s
    s += '4' 
    print(id(s),s)
    
    2371959191728 123
    2371959179632 1234
    
    l = [1,2,3]
    print(id(l),l)
    # 可变,相当于在原列表 l 中增加元素 4
    l += [4]
    print(id(l),l)
    
    2371958877312 [1, 2, 3]
    2371958877312 [1, 2, 3, 4]
    
    l = [1,2,3]
    print(id(l),l)
    l *= 0 # 清空列表
    print(id(l),l)
    
    2371958290048 [1, 2, 3]
    2371958290048 []
    
    s = {1,2,3}
    print(id(s),s)
    s |= {0}
    print(id(s),s)
    
    2371958464800 {1, 2, 3}
    2371958464800 {0, 1, 2, 3}
    

    带标注的赋值语句。单个语句中将变量或属性标注和可选的赋值语句合为一体。标注对提高代码的可读性非常有用,看标注而不需要看代码上下文就大概知道代码的使用。

    # 标注函数参数的类型及默认值
    def f(n:int=1):
        print('Hi'*n)
    f(2)
    
    HiHi
    
    name: str = '小张'
    name
    
    '小张'
    
    展开全文
  • python中的语句:赋值语句if语句,当条件成立时运行语句块。经常与else, elif(相当于else if)配合使用。for语句,遍列列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素。while语句,当条件为真时,...

    python中的语句:

    赋值语句

    if语句,当条件成立时运行语句块。经常与else, elif(相当于else if)配合使用。

    for语句,遍列列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素。

    while语句,当条件为真时,循环运行语句块。

    try语句。与except, finally, else配合使用处理在程序运行中出现的异常情况。

    class语句。用于定义类型。

    def语句。用于定义函数和类型的方法。

    pass语句。表示此行为空,不运行任何操作。

    assert语句。用于程序调适阶段时测试运行条件是否满足。

    with语句。Python2.6以后定义的语法,在一个场景中运行语句块。比如,运行语句块前加锁,然后在语句块运行退出后释放锁。

    yield语句。在迭代器函数内使用,用于返回一个元素。

    raise语句。抛出一个异常。

    import语句。导入一个模块或包。常用写法:from module import name, import module as name, from module import name as anothername

    特别说明,以上划分也不是很严格,有的内容,有的朋友不认为属于语句。这没关系,反正就是那个东西,在编程中使用。不纠结于名词归类上。总之这些都是要掌握的,才能顺利编程呢。

    赋值语句

    实例:

    >>> hiekay = 1

    >>> python = 2

    >>> x, y = hiekay, python #相当于x=hiekay,y=python

    >>> x

    1

    >>> y

    2

    >>> x, y #输出的是tuple

    (1, 2)

    >>> [x, y] #这就是一个list

    [1, 2]

    >>> [a, b] = [hiekay, python]

    >>> a

    1

    >>> b

    2

    >>> a, b

    (1, 2)

    >>> [a, b]

    [1, 2]

    换一种方式,以上两种赋值方法交叉组合一下:

    >>> [c, d] = hiekay, python

    >>> c

    1

    >>> d

    2

    >>> c, d

    (1, 2)

    >>> f, g = [hiekay, python]

    >>> f

    1

    >>> g

    2

    >>> f, g

    (1, 2)

    居然也行。其实,赋值,就是对应着将左边的变量和右边的对象关联起来。

    有这样一个有趣的问题,如果a=3,b=4,想把这两个变量的值调换一下,也就是a=4,b=3。在有的高级语言中,是要先引入另外一个变量c做为中间变量:

    a = 3

    b = 4

    c = a #即c=3

    a = b #a=4

    b = c #b=3

    python 更牛逼,不需要中间变量:

    >>> hiekay = 100

    >>> python = 200

    >>> hiekay, python = python, hiekay

    >>> hiekay

    200

    >>> python

    100

    神奇吧。

    序列赋值

    其实上面实验的赋值,本质上就是序列赋值。如果左边的变量是序列,右边的对象也是序列,两者将一一对应地进行赋值。

    >>> [a, b, c] = (1, 2, 3) #左右序列一一对应,左边是变量,右边是对象

    >>> a

    1

    >>> b

    2

    >>> c

    3

    >>> (a,b,c) = [1,2,3]

    >>> a

    1

    >>> b

    2

    >>> c

    3

    >>> [a,b,c] = "kay" #不要忘记了,str也是序列类型的数据

    >>> a

    'k'

    >>> b

    'a'

    >>> c

    'y'

    >>> (a,b,c) = "kay"

    >>> a,c

    ('k', 'y')

    >>> a,b,c = 'kay' #与前面等价

    >>> a,b

    ('k', 'a')

    >>> a,b = 'kay' #报错了,因为左边和右边不是一一对应

    Traceback (most recent call last):

    File "", line 1, in

    ValueError: too many values to unpack

    >>> (a,b),c = "hi","kay" #注意观察,这样的像是是如何对应的

    >>> a,b,c

    ('h', 'i', 'kay')

    >>> string = "hiekay"

    >>> a,b,c = string[0],string[1],string[2] #取切片也一样

    >>> a,b,c

    ('h', 'i', 'e')

    >>> (a,b),c = string[:2],string[2:]

    >>> a,b,c

    ('h', 'i', 'ekay')

    展开全文
  • python中的语句:赋值语句if语句,当条件成立时运行语句块。经常与else, elif(相当于else if)配合使用。for语句,遍列列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素。while语句,当条件为真时,...

    python中的语句:

    赋值语句

    if语句,当条件成立时运行语句块。经常与else, elif(相当于else if)配合使用。

    for语句,遍列列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素。

    while语句,当条件为真时,循环运行语句块。

    try语句。与except, finally, else配合使用处理在程序运行中出现的异常情况。

    class语句。用于定义类型。

    def语句。用于定义函数和类型的方法。

    pass语句。表示此行为空,不运行任何操作。

    assert语句。用于程序调适阶段时测试运行条件是否满足。

    with语句。Python2.6以后定义的语法,在一个场景中运行语句块。比如,运行语句块前加锁,然后在语句块运行退出后释放锁。

    yield语句。在迭代器函数内使用,用于返回一个元素。

    raise语句。抛出一个异常。

    import语句。导入一个模块或包。常用写法:from module import name, import module as name, from module import name as anothername

    特别说明,以上划分也不是很严格,有的内容,有的朋友不认为属于语句。这没关系,反正就是那个东西,在编程中使用。不纠结于名词归类上。总之这些都是要掌握的,才能顺利编程呢。

    赋值语句

    实例:

    >>> hiekay = 1

    >>> python = 2

    >>> x, y = hiekay, python #相当于x=hiekay,y=python

    >>> x

    1

    >>> y

    2

    >>> x, y #输出的是tuple

    (1, 2)

    >>> [x, y] #这就是一个list

    [1, 2]

    >>> [a, b] = [hiekay, python]

    >>> a

    1

    >>> b

    2

    >>> a, b

    (1, 2)

    >>> [a, b]

    [1, 2]

    换一种方式,以上两种赋值方法交叉组合一下:

    >>> [c, d] = hiekay, python

    >>> c

    1

    >>> d

    2

    >>> c, d

    (1, 2)

    >>> f, g = [hiekay, python]

    >>> f

    1

    >>> g

    2

    >>> f, g

    (1, 2)

    居然也行。其实,赋值,就是对应着将左边的变量和右边的对象关联起来。

    有这样一个有趣的问题,如果a=3,b=4,想把这两个变量的值调换一下,也就是a=4,b=3。在有的高级语言中,是要先引入另外一个变量c做为中间变量:

    a = 3

    b = 4

    c = a #即c=3

    a = b #a=4

    b = c #b=3

    python 更牛逼,不需要中间变量:

    >>> hiekay = 100

    >>> python = 200

    >>> hiekay, python = python, hiekay

    >>> hiekay

    200

    >>> python

    100

    神奇吧。

    序列赋值

    其实上面实验的赋值,本质上就是序列赋值。如果左边的变量是序列,右边的对象也是序列,两者将一一对应地进行赋值。

    >>> [a, b, c] = (1, 2, 3) #左右序列一一对应,左边是变量,右边是对象

    >>> a

    1

    >>> b

    2

    >>> c

    3

    >>> (a,b,c) = [1,2,3]

    >>> a

    1

    >>> b

    2

    >>> c

    3

    >>> [a,b,c] = "kay" #不要忘记了,str也是序列类型的数据

    >>> a

    "k"

    >>> b

    "a"

    >>> c

    "y"

    >>> (a,b,c) = "kay"

    >>> a,c

    ("k", "y")

    >>> a,b,c = "kay" #与前面等价

    >>> a,b

    ("k", "a")

    >>> a,b = "kay" #报错了,因为左边和右边不是一一对应

    Traceback (most recent call last):

    File "", line 1, in

    ValueError: too many values to unpack

    >>> (a,b),c = "hi","kay" #注意观察,这样的像是是如何对应的

    >>> a,b,c

    ("h", "i", "kay")

    >>> string = "hiekay"

    >>> a,b,c = string[0],string[1],string[2] #取切片也一样

    >>> a,b,c

    ("h", "i", "e")

    >>> (a,b),c = string[:2],string[2:]

    >>> a,b,c

    ("h", "i", "ekay")

    总结: 变量与值 一一对应 .

    展开全文
  • Python赋值语句

    2021-01-18 21:56:18
    Python赋值语句简单赋值语句序列赋值语句扩张的序列解包多目标赋值语句增量赋值语句 简单赋值语句 >>> a = 1 >>> b = 2 >>> a, b (1, 2) 序列赋值语句 扩张的序列解包 多目标赋值语句 ...

    简单赋值语句

    >>> a = 1
    >>> b = 2
    >>> a, b
    (1, 2)
    

    序列赋值语句

    元组赋值语句

    
    >>> a, b = 1, 2
    >>> a, b
    (1, 2)
    >>> a, b = (1, 2)
    >>> a, b
    (1, 2)
    >>> (a, b) = 1, 2
    >>> a, b
    (1, 2)
    >>> (a, b) = (1, 2)
    >>> a, b
    (1, 2)
    

    列表赋值语句

    >>> [a, b] = [1, 2]
    >>> a, b
    (1, 2)
    

    扩展的序列解包

    >>> seq = [1, 2, 3, 4]
    >>> a, b, c, d = seq
    >>> print(a, b, c, d)
    1 2 3 4
    >>> a, *b = seq
    >>> print(a,b)
    1 [2, 3, 4]
    >>> *a, b = seq
    >>> print(a, b)
    [1, 2, 3] 4
    >>> a, *b, c = seq
    >>> print(a, b, c)
    1 [2, 3] 4
    >>> a, b, *c = seq
    >>> print(a, b, c)
    1 2 [3, 4]
    

    多目标赋值语句

    >>> a = b = 1
    >>> a,b
    (1, 1)
    >>> a = b = c = 'hello'
    >>> a, b, c
    ('hello', 'hello', 'hello')
    

    增量赋值语句

    增量赋值语句有以下形式

    表达式 表达式 表达式 表达式
    x += y x -= y x *= y x /= y
    x %= y x // =y x **= y x &= y
    x |= y x ^= y x <<= y x >>= y
    >>> a = 10
    >>> a += 5
    >>> a
    15
    >>> a -= 6
    >>> a
    9
    >>> a *= 2
    >>> a
    18
    >>> a /= 3
    >>> a
    6.0
    >>> b = 10
    >>> b //= 3
    >>> b
    3
    >>> b %= 5
    >>> b
    3
    >>> b **= 3
    >>> b
    27
    >>> L = [1, 2]
    >>> M = L
    >>> L = L + [3, 4] # L被赋值给了一个新的对象
    >>> L, M
    ([1, 2, 3, 4], [1, 2])
    >>> L = [1, 2]
    >>> M = L
    >>> L += [3, 4] # += 意味着扩展 L = L.extend([3, 4])
    >>> L, M
    ([1, 2, 3, 4], [1, 2, 3, 4])
    >>> L = [1, 2]
    >>> M = L
    >>> L.extend([3, 4])
    >>> L, M
    ([1, 2, 3, 4], [1, 2, 3, 4])
    

    增量赋值语句与共享引用

    >>> L = [1, 2]
    >>> M = L
    >>> L = L + [3, 4] # L被赋值给了一个新的对象
    >>> L, M
    ([1, 2, 3, 4], [1, 2])
    >>> L = [1, 2]
    >>> M = L
    >>> L += [3, 4] # += 意味着扩展 L = L.extend([3, 4])
    >>> L, M
    ([1, 2, 3, 4], [1, 2, 3, 4])
    >>> L = [1, 2]
    >>> M = L
    >>> L.extend([3, 4])
    >>> L, M
    ([1, 2, 3, 4], [1, 2, 3, 4])
    
    展开全文
  • 我们前面讲到的赋值语句是最简单的赋值语句。出现在赋值符号左边的只是一个简单的变量名。实际上,能够出现在赋值符号左边的内容远远不止如此。我们下面就来讲解更加复杂的赋值语句——复合结构的赋值。复合结构的...
  • python赋值语句技巧之序列解包sequence unpacking,是python语言赋值语句的一种技巧方法,在给多个python 变量命名同时赋值时是很有效率的一种方法。赋值语句序列解包概念在玩蛇网python基础教程中有讲过如何赋值,...
  • 就像自增自减运算符一样,技术上可以实现此语法,但是为了贯彻python不可变类型的理念,所以不添加此运算符,python中while判断不能用赋值语句,也只是因为 遵循 判断语句必须是布尔表达式 的理念.所以不支持. 在python...
  • 赋值语句 C.生成语句 D.标识符 以下关于Python数值运算描述错误......在 python 中,正确的赋值语句为【D x=y=30】 60、 执行下列 python 语句后的显示结果是【A Equal】 x=2 y= if (x==y):print(‘Equal’)...
  • Python的赋值语句,有一种带条件判断的语法,将赋值和条件判断融为一行代码,使需要条件判断的赋值代码写起来更加简练高效。这种赋值语句中的条件判断,可以是if判断,也可以是or和and判断。赋值语句中的if请看下面...
  • python中的赋值语句存在两种有关的类型: entity 和 name.赋值语句也可能有两种形式:name = entityname1 = name2被我们创建的entity保存在内存中。 而语句name = entity则是将name 绑定在entity 上。 意味着可以...
  • C语言赋值语句

    2019-10-16 12:14:01
    今天学习了C程序中的赋值语句,C语言的赋值语句属于表达式语句,由一个赋值表达式加一个分号组成。在一个表达式中可以包含另一个表达式,赋值表达式是表达式,那么它就可以出现在其他表达式中。例如:if((a=b)>0)...
  • 我在看别人的项目的时候看到了这样的一段赋值语句,请问有大神帮忙理解下吗? const bool is_cell_moved_to_left_partition = [&]() { if (right_partition.AreAllCellsLocked()) { return false; } if (left_...
  • python赋值语句的形式1.基本赋值>>> a='test'2.元组赋值运算(位置)>>> a,b='this','is' #写入了2个元组,只是省略了括号>>> a'this'>>> b'is'>>> x='this'>>>...
  • VHDL赋值语句

    千次阅读 2018-08-17 09:11:00
    VHDL赋值语句
  • 在python中,有各种不同类型的语句。一个python程序是由模块构成的;...赋值语句:标识符 = object判断语句:if/elif/else循环相关语句:while/elsefor/elsebreakcontinue类及函数相关语句:classdefreturnyieldglob...
  • Python 赋值语句

    2021-01-11 12:53:08
    Python 赋值语句 条件赋值 a = 1 if a is not none else 0
  • C语言把赋值表达式和赋值语句区别开来 例子: if((a=b)>0) t=a; if((a=b;)>0) t=a; ❌ 摘抄自教材
  • 1.增强赋值语句中x只被评估一次,且评估顺序是从左往右进行的,即先评估x后评估1,最后执行操作  1.评估x: 在当前符号表中找到x,根据其值(所引用对象的地址值)找到与之绑定的对象  2.评估int型对象1  3.执行操作  1...
  • Verilog赋值语句

    万次阅读 2016-09-30 16:12:33
     赋值分为“连续赋值语句”、“过程赋值语句”和“过程连续赋值语句”。 1 连续赋值语句  语法上,必须有assign关键字标识; 用于对线网进行赋值,等价于门级描述;  不能出现在过程块(initial / always)中...
  • 赋值表达式末尾没有分号,而赋值语句末尾必须有分号。在一个表达式之中可以包含一个或多个赋值表达式,但绝不能包含赋值语句
  • 最基本的语句——赋值语句

    千次阅读 2019-06-27 14:46:47
    最基本的语句——赋值语句 【知识点】 赋值运算符; 复合的赋值运算符; 赋值表达式; *赋值过程中的类型转换; 赋值表达式和赋值语句; 变量赋初值; 【内容】 在C程序中最常用的语句是:赋值语句和输入...
  • C语言在赋值语句的使用中需要注意以下几点:1、由于在赋值符“=”右边的表达式也可以又是一个赋值表达式, 因此,下述形式 变量=(变量=表达式); 是成立的,从而形成嵌套的情形。 其展开之后的一般形式为:变量=变量=...
  • 3.2 赋值语句;3.2 赋值语句;PowerPoint 演示文稿;PowerPoint 演示文稿;PowerPoint 演示文稿;3.3.1 printf函数;2. printf函数中常用的;2数据类型修饰符;例3.2 在printf函;输出实型数据所占的宽度; 输出数据的精度;4...
  • 主要介绍了Python赋值语句后逗号的作用,实例分析了Python赋值语句加入逗号实现类型转换的技巧,需要的朋友可以参考下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 26,148
精华内容 10,459
关键字:

赋值语句