• python变量类型


    1.输入和输出

    input读取的是字符串,括号内的为提示信息,可有可无

    _ 表示最后一个表达式的值

    Python不需要像其他语言那样要 ; 号结束语句

    格式化与C一致,%d  %f  %s  %x(十六进制整数)  %%(%)

     end默认“ ”换行  ” “为不换行

    1 for i in range(10):
    2     print(i,end=" ")  #输出:0 1 2 3 4 5 6 7 8 9

    输出重定向

    1 f = open('F:mylog.txt','a')  #在F盘下新建一个文本文件,以追加的形式
    2 print('1234567890',file=f)
    3 f.close()  #打开必须关闭

    2.变量

    Python 中的变量赋值不需要类型声明(动态语言)。

    每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。

    每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

    Python中赋值是将对象的引用(并不是值)赋值给变量

    1 x = 3 #创建一个整型对象并将其引用赋给x,该对象引用为1
    2 y = x #对象3的引用+1,x和y同时指向3
    3 del obj  #删除对象的一个引用,记数为0则被回收

    Python允许你同时为多个变量赋值。例如:

    a = b = c = 99

    1 x = 1
    2 y = (x=x+1) #赋值语句不是合法表达式
    3 y=x=x+1 #链式赋值没问题

    不支持自增自减,但支持n*=10

     

    3.变量作用域

    Python的作用域一共有4种:

      L(Local)局部作用域

      E(Enclosing)闭包函数外的函数中

      G(Global)全局作用域

      B(Built-in)内建作用域

    以L->E->G->B的规则查找(局部找不到,便去局部外的局部,再找不到就会去全局找,全局找不到去内建找)

    1 x = int(2,9)    #内建作用域
    2 g_count = 0    #全局作用域
    3 def outer():
    4     o_count = 1    #闭包函数外的函数中
    5     def inner():
    6         i_count = 2    #局部作用域

    4.global和nonlocal关键字

    当内部作用域想修改外部作用域的变量时,就要用到global和nonlocal关键字

    1 num = 1
    2 def fun1():
    3     global num
    4     print(num)    #1
    5     num = 123
    6     print(num)    #123
    7 
    8 print(fun1())
    9 print(num)    #123

    如要修改嵌套作用域中的变量则用nonlocal

     1 def outer():
     2     num = 10
     3     def inner():
     4         nonlocal num
     5         num = 100
     6         print(num)    #100
     7     inner()
     8     print(num)    #100
     9 
    10 a = outer()
    11 
    12 if '__name__'=='__main__':
    13     a()

    5.多行书写

    一行过长的语句可以用反斜杆()分解成几行

    1 for i in 
    2 range(10):
    3     print(i,end="") #0123456789

    三引号包括下的字符串也可跨行书写'''  '''

    分号(;)允许将多个语句写在同一行上,语句之间用分号隔开

  • 相关阅读:
    [LeetCode] 314. Binary Tree Vertical Order Traversal
    [LeetCode] 139. Word Break
    [LeetCode] 540. Single Element in a Sorted Array
    [LeetCode] 1443. Minimum Time to Collect All Apples in a Tree
    [LeetCode] 1442. Count Triplets That Can Form Two Arrays of Equal XOR
    [LeetCode] 1441. Build an Array With Stack Operations
    [LeetCode] 277. Find the Celebrity
    [LeetCode] 1232. Check If It Is a Straight Line
    [LeetCode] 10. Regular Expression Matching
    [LeetCode] 1192. Critical Connections in a Network
  • 原文地址:https://www.cnblogs.com/bfcs/p/10728806.html
Copyright © 2020-2023  润新知