不能以数字开头;
*:用于两个整形或浮点型值时,表示乘法,但用于字符串值和一个整形值时,它则变成了'字符串复制'操作符;
交互式环境窗口与文件编辑器窗口区别: 交互式环境窗口总是有>>>提示符;文件编辑器窗口没有>>>提示符;注释: 单行注释:#这是单行注释;多行注释:用三个单引号'''或者三个双引号 """将注释括起来;'''这是 多行注释;''' """这是多行 注释;"""虽然数字的字符串值被认为与整形值和浮点型值完全不同,但整形值可以与浮点值相等,eg: >>>42 == 42.0 True #!:常用于Unix系统脚本中的第一行开头使用,用于知名执行这个脚本文件的解释程序; #! /usr/bin/python3 运算符优先级 Python保留字数据类型转换
正负无穷 float('inf') #正无穷 float('-inf') #负无穷 利用inf乘以0得到一个not-a-number(NaN),NaN与inf的区别:inf数的significant部分为0,而NaN数的significant部分部位0;参数组: ```python
def test(*args): print(args)
test(1, 3, 4) (1, 3, 4) ```
# 参数组返回的是字典 def test2(**kwargs): print(kwargs) >>> test2(name = 'k', age = 4, sex = 'M') {'name':'k', 'age':4, 'sex':'M'}调用函数时,实质上传递的是实参保存数据的引用,而不是实参保存的数据;
位置参数和关键字:标准调用与形参位置一一对应;关键字调用无序固定;关键字参数必须在位置参数后边;
函数传递的参数 若是不可变类型:只要针对参数使用了赋值语句,函数内部会修改局部变量的引用,但不会对外部变量的引用造成影响;若是可变类型:在函数内部使用方法修改参数内容时,同时也会对外部的数据造成影响,随着函数内部参数内容改变而改变;当参数是列表时,使用+=不是进行相加再赋值的操作,本质上是调用列表的extend方法;缺省参数注意点 缺省参数的定义位置在参数列表末尾;若由多个缺省参数,需要指定参数名;多值参数 参数前有一个*可接收元祖,常命名为*args;参数前有两个*可接受字典,常命名为**kwargs;元祖与字典的拆包 要将一个元祖变量直接传递给args,则在元祖变量前增加一个*;要将一个字典变量直接传递给kwargs,则在字典变量前增加两个**;局部和全局作用域 在被调用函数内赋值的变元和变量,属于该函数的“局部作用域”,处于其中的变量称为”局部变量“,在所有函数之外赋,值的变量,属于“全局作用域”,处于其中的变量为”全局变量“。局部变量不能在全局作用域内使用;局部作用域不能使用其他局部作用域内的变量;全局变量可以在局部作用域中读取;global语句 通过使用global语句,在函数内修改全局变量;eggs = 'global' def spam(): global eggs eggs = 'spam' spam() print(eggs) ----------- spam -----------除了字符串和整数不能在函数中改变它的值之外,其他的数据类型如列表、字典、集合等都能够通过函数改变它们的值;区分一个变量是处于局部作用域还是全局作用域的4条法则: 若变量在全局作用于中使用(即在所有函数之外),则为全局变量;若在一个函数中,有针对该变量的global语句,则为全局变量;如果变量用于函数中的赋值语句,则为局部变量;若变量没有用于复制语句中,则为全局变量;异常处理:错误可由try和except语句处理; def spam(divideBy): try: return 43 / divideBy except ZeroDivisionError: print('Error:Invalid argument.') 小程序:猜数字 #小程序:猜数字,不断循环,直到你猜出这个数 guessNumber = random.randint(1,100) print("I'm thinking a number between 1 and 100.") while True: print('Take a guess.') guess = int(input()) if guess > guessNumber: print("It's too high") elif guess < guessNumber: print("It's to low") else: print("Congratulations, you win.") break Collatz序列 #Collatz序列 def collatz(number): if (number % 2 == 0): return number / 2 else: return number * 3 + 1 print('Input a number.') while True: global number1 try: number1 = int(input()) except ValueError: print('Please input a number') continue if collatz(number1) != 1: print(int(collatz(number1))) else: print(int(collatz(number1))) break欢迎关注微信公众号:村雨1943;创作不易,未经同意,转载请注明出处~
转载于:https://www.cnblogs.com/cunyu1943/p/11605986.html
相关资源:数据结构—成绩单生成器