pycharm中练习代码:
1 #视频2 函数定义 2 def print_python(): 3 print('*************') 4 5 for m in range(5): 6 print_python() 7 print() 8 9 10 11 #加法 12 def sum(): 13 a=1 14 b=2 15 c=a+b 16 return c 17 18 aa=sum() 19 print(aa) 20 21 print('--------------------------')
运行:
1 #视频3 函数参数 2 def sum(a,b,tt=99,*args): 3 print(a) 4 print(b) 5 print(tt) 6 print(args) 7 c=a+b 8 return c 9 10 aa=sum(1,55,888) 11 print(aa) 12 13 print('--------------------------') 14 #视频4 不定长参数 15 def sum(a,b,tt=99,*args,**kwargs): 16 print(a) 17 print(b) 18 print(tt) 19 print(args) #元祖形式保存 20 print(kwargs) #字典形式保存 21 c=a+b 22 return c 23 24 aa=sum(1,55,888,666,777,gg=10,pp=30) 25 print(aa) 26 27 28 print('--------------------------') 29 #视频5 拆包 30 def sum(a,b,tt=99,*args,**kwargs): 31 print(a) 32 print(b) 33 print(tt) 34 print(args) 35 print(kwargs) 36 # return c 37 38 aa=sum(1,'python',(1,2,3,4),{'a':11,'b':22},bb='hello') 39 40 41 #拆包 42 def sum(a,b,tt=99,*args,**kwargs): 43 print(a) 44 print(b) 45 print(tt) 46 print(args) 47 print(kwargs) 48 # return c 49 50 aa=sum(*(1,2,3,4),**{'aa':11,'cc':22},bb='hello') # **只能配字典 #拆包 51 52 53 print('--------------------------') 54 #视频6 内置函数 55 #过滤列表 和map 56 def func1(n): 57 if n>4: 58 return n*2 59 60 li=[11,2,3,41,1,12,2] 61 62 aa=filter(func1,li) #过滤不会改变传入参数的值 63 print(list(aa)) 64 65 bb=map(func1,li) 66 print(list(bb)) 67 68 69 70 print('--------------------------') 71 #zip配对 72 li=[1,2,3] 73 li2=[4,5,6,7] 74 tt=zip(li,li2) 75 print(list(tt))
运行:
//视频6 内置函数
>>> dir(__builtins__)
['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'BlockingIOError',
'BrokenPipeError', 'BufferError', 'BytesWarning', 'ChildProcessError', 'ConnectionAbortedError',
'ConnectionError', 'ConnectionRefusedError', 'ConnectionResetError', 'DeprecationWarning',
'EOFError', 'Ellipsis', 'EnvironmentError', 'Exception', 'False', 'FileExistsError',
'FileNotFoundError', 'FloatingPointError', 'FutureWarning', 'GeneratorExit', 'IOError',
'ImportError', 'ImportWarning', 'IndentationError', 'IndexError', 'InterruptedError',
'IsADirectoryError', 'KeyError', 'KeyboardInterrupt', 'LookupError', 'MemoryError',
'NameError', 'None', 'NotADirectoryError', 'NotImplemented', 'NotImplementedError',
'OSError', 'OverflowError', 'PendingDeprecationWarning', 'PermissionError',
'ProcessLookupError', 'RecursionError', 'ReferenceError', 'ResourceWarning',
'RuntimeError', 'RuntimeWarning', 'StopAsyncIteration', 'StopIteration',
'SyntaxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError',
'TimeoutError', 'True', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError',
'UnicodeEncodeError', 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning',
'UserWarning', 'ValueError', 'Warning', 'ZeroDivisionError', '__build_class__',
'__debug__', '__doc__', '__import__', '__loader__', '__name__', '__package__',
'__spec__', 'abs', 'all', 'any', 'ascii', 'bin', 'bool', 'bytearray', 'bytes',
'callable', 'chr', 'classmethod', 'compile', 'complex', 'copyright', 'credits',
'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'exec', 'exit', 'filter',
'float', 'format', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help',
'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'license',
'list', 'locals', 'map', 'max', 'memoryview', 'min', 'next', 'object', 'oct', 'open',
'ord', 'pow', 'print', 'property', 'quit', 'range', 'repr', 'reversed', 'round', 'set',
'setattr', 'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type',
'vars', 'zip']
>>>
练习:
>>> li=[1,2,3,4,5]
>>> len(li)
5
>>>
>>> len('assdfsdfsdf')
11
>>> len((1,2,3,4,5))
5
>>> min(li)
1
>>> tu=(11,22,3,4)
>>> min(tu)
3
>>> max(tu)
22
>>>
>>> li=[11,22,3,4,555,666,76]
>>> li.sort(reverse=False) //排序
>>> li
[3, 4, 11, 22, 76, 555, 666]
>>>
>>> li=[11,22,3,4,555,666,76]
>>> li
[11, 22, 3, 4, 555, 666, 76]
>>> sorted(li) //原来li不会变
[3, 4, 11, 22, 76, 555, 666]
>>> li
[11, 22, 3, 4, 555, 666, 76]
>>> list(reversed(li)) //原来li不会变
[76, 666, 555, 4, 3, 22, 11]
>>> li
[11, 22, 3, 4, 555, 666, 76]
>>>
//转换进制
>>> bin(12)
'0b1100'
>>> oct(222)
'0o336'
>>> hex(222)
'0xde'
>>> ord('a')
97
>>> ord('A')
65
>>> chr(97)
'a'
>>>
知识点:
enumerate 同时列出数据和数据下标,一般用在for循环中
eval 1取出字符串中内容
2,将字符串str当成有效的表达方式来求指并返回计算结果
exec 执行字符串或complie方法编译过的字符串
filter 过滤器
zip 将对象逐一配对
map 对于参数iterable中的每个元素都应用fuction函数,并将结果作为列表返回
>>> li=[111,222,333,444,555]
>>> enumerate(li)
<enumerate object at 0xb71499b4>
>>> list(enumerate(li))
[(0, 111), (1, 222), (2, 333), (3, 444), (4, 555)]
>>> str='3*7'
>>> str
'3*7'
>>> eval(str)
21
>>> str
'3*7'
>>> str2='[1,2,3,4]'
>>> li=[11,22,33,44]
>>> eval(str2)
[1, 2, 3, 4]
>>>
>>> str3="print('nihao')"
>>> str3
"print('nihao')"
>>> exec(str3)
nihao
>>>
>>> st='print(66) if 1>2 else print(88)'
>>> st
'print(66) if 1>2 else print(88)'
>>> exec(st)
88
>>>
作业:
1 #1,定义一个函数,调用函数的时候可以传入两个参数, 2 # 然后可以选择加减乘除的方法,对这传进去的参数进行加减乘除运算 3 def infojiemian(a,b): 4 print('{:=^25}'.format('选择')) 5 print('1.加法') 6 print('2.减法') 7 print('3.乘法') 8 print('4.除法') 9 print('=' * 30) 10 num = int(input('请按提示选择功能:')) 11 # print(num) 12 if num == 1: 13 print('%s+%s=%s'%(a,b,a+b)) 14 elif num == 2: 15 print('%s-%s=%s' % (a, b, a - b)) 16 elif num == 3: 17 print('%s*%s=%s' % (a, b, a * b)) 18 elif num == 4: 19 print('%s/%s=%s' % (a, b, a / b)) 20 else: 21 print('你输入有误') 22 23 infojiemian(2,4)
运行: