欧2020

导航

python学习记录(一)-基础

交换变量值

a,b = 10,20
print(a,b) #10 20
a,b = b,a
print(a,b) #20 10

大字符串

str = '''最近在看的动漫:
黑之契约者、咒术回战。。。'''
print(str)
#最近在看的动漫:
#黑之契约者、咒术回战。。。

取消转义字符

str = '取消\t转义字符'
print(str) #取消  转义字符
str = r'取消\n转义字符'
print(str) #取消\t转义字符

元组

vart = (1,2,3)
print(vart,type(vart)) #(1, 2, 3) <class 'tuple'>
vart = (1)
print(vart,type(vart)) #1 <class 'int'>
vart = (1,)
print(vart,type(vart)) #(1,) <class 'tuple'>
vart = 1,2,3
print(vart,type(vart))  #(1, 2, 3) <class 'tuple'>

集合

无序、内容不重复

vars = {3,1,8,2}
print(vars,type(vars)) #{8, 1, 2, 3} <class 'set'>
vars = {}
print(vars,type(vars)) #{} <class 'dict'>
vars =set()
print(vars,type(vars)) #set() <class 'set'>

集合运算

a = {1,2,3,'a','b','c'}
b = {'a','b',4,5,6}
print(a & b) #交集 {'a', 'b'}
print(a - b) #差集 {1, 2, 3, 'c'}
print(a | b) #并集 {1, 2, 3, 4, 5, 6, 'b', 'c', 'a'}
print(a ^ b) #对称差集 {'c', 1, 2, 3, 4, 5, 6}

集合操作

a = {1,2,3}
a.add(4)
print(a) #{1, 2, 3, 4}
a.discard(4)
print(a) #{1, 2, 3}
print(4 in a) #False

算术运算符

#+ - * / % ** //
a,b = 5,2
print(a/b) #2.5
print(a%b) #1
print(a//b) #2
print(b**3) #8

拼接字符串

a = 'hello'
print(f'{a} world') #hello world
print('{} world'.format(a)) #hello world
name,age = "osan",18
print("%s永远%d" % (name,age))
pi = 3.1415926
print("%.3f" % pi)

是否引用同一个对象

a,b = 10,11
print(id(a),id(b)) #140730676310576 140730676310608
print(a is b,a is not b) #False True

参数们

def fun(var1,var2,*vars,keyvars,**kwvars):
    print(var1,var2) # 10 20
    print(vars,type(vars)) # ('收', '集', '参', '数') <class 'tuple'>
    print(keyvars) # 关键字参数
    print(kwvars,type(kwvars)) # {'k1': '关键字', 'k2': '收集', 'k3': '参数'} <class 'dict'>
fun(10,20,'收','集','参','数',keyvars='关键字参数',k1='关键字',k2='收集',k3='参数')

访问变量

num = 10
str = '1234'
varlist = [1,2,3,4]
varset = {1,2,3,4}
vardict = {1:11,2:22}

def fun():
    print(num) # 10
    num = 11 # UnboundLocalError: local variable 'num' referenced before assignment
    print(str) # 1234
    str = '12345' # UnboundLocalError: local variable 'num' referenced before assignment
    varlist[3] = 44
    varset.add(5)
    vardict[1] = 111

fun()
print(varlist) # [1, 2, 3, 44]
print(varset) # {1, 2, 3, 4, 5}
print(vardict) # {1: 111, 2: 22}

全局变量

num = 10
str = '1234'

def fun():
    global num,str,jubu
    num = 11
    str = '12345'
    jubu = '函数内定义的全局变量'

fun()
print(num) # 11
print(str) # 12345
print(jubu) # 函数内定义的全局变量

查看作用域

num = 10
def fun():
    global var1
    var1 = 1234
    var2 = 3456
    def inner():
        pass
    print(globals()) # {'num':10,var1:1234,...}
    print(locals()) # {'var2': 3456,'inner':<function fun.<locals>.inner>}

fun()
print(globals()) # {'num':10,var1:1234,...}
print(locals())  # {'num':10,var1:1234,...}

nonlocal

def fun():
    var = 1
    def inner():
        nonlocal var
        print(var) # 1
        var = 2
        print(var) # 2
    inner()
fun()

posted on 2020-12-17 18:21  欧2020  阅读(61)  评论(0)    收藏  举报