1.range(起始位置)

  range(终止位置)

  range(起始,终止位置)

  range(起始,终止,步长)

2.next(迭代器) 是内置函数

  __next__是迭代器的方法

  g.__next__() 带双下划线的魔术方法一般情况下不直接使用

  next(g)     之前所有的__next__都应该替换成next(g)

3.iter(可迭代的)

  __iter__

  迭代器 = 可迭代.__iter__()

  迭代器 = iter(可迭代的)

4.open("文件名") 跟着操作系统走

  打开模式 默认是r

  编码 默认是 操作系统的默认编码

  

  打开模式 : r w a rb wb ab

  编码 : utf-8 gbk

5.input("字符串数据类型的参数,提醒用户你要输入的内容")

  python2

    input() 还原你输入的值的数据类型

    raw_input = py3.input

  python3

    input() 输入的所有内容都是字符串类型

    阻塞:等待某件事情发生,如果不发生一直等着

  input的返回值就是用户输入的内容

    输入的内容 = input("提示")

6. print(要打印的内容1,要打印的内容2,要打印的内容3,sep = "分隔符",end = "结束符")

  print(123,"abc","阿达",sep = "|")

  f= open("file","w")

  print(123,"abc",file=f)  #print的本质,就是写文件,这个文件是pycharm的屏幕

# import time   # 导入别人写好的代码
# def func():
# for i in range(0,101,2):
# time.sleep(0.1) # 每一次在这个地方阻塞0.1,0.1秒结束就结束阻塞
# char_num = i//2
# if i == 100:
# per_str = '\r%s%% : %s\n' % (i, '*' * char_num)
# else:
# per_str = '\r%s%% : %s' % (i, '*' * char_num)
# print(per_str,end = '')
# func()
# print('下载完成')

7.hash函数

  哈希 可哈希(不可变数据类型) 不可哈希(可变数据类型)

  哈希是一个算法,导致了字典的快速寻址

  "addafaf" 通过hash函数,得到一个数字

  不可变的数据可以通过hash函数的到hash值

8.dir 函数 :特殊的需求,了解一个新的数据类型

print(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', 'ModuleNotFoundError',
'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', 'WindowsError', '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']'''

8. eval() 可以将字符串数据类型的python代码执行,通过拼接字符串的方式来执行不同的代码-简化代码

# eval\exec这个函数 不能直接操作文件当中读进来的 网络上传进来 用户输入的
# eval('print(1+2+3+4)') # 有返回值
# ret = eval('1+2/3*4')
# print(ret) # 字符串 -> 其他数据类型的转换
# f = open('userinfo')
# content = f.read()
# print(content,type(content))
# ret = eval(content)
# print(ret,type(ret))
# print(ret[0]) # 员工信息表
# def get_info(f):
# if eval('33 %s 20'%f):
# print('是符合条件的行')
#
# if '>':
# get_info('>')
# if '<' :
# get_info('<') # 9 exec()
# exec('print(1+2+3+4)') # 没有返回值
# ret = exec('1+2/3*4')
# print(ret)
# exec('for i in range(200):print(i)')

10 compile 能够节省时间工具

  先编译 python -编译-> 字节码(bytes) -解释 ->机器码0101010101

# 先整体编译
# code1 = 'for i in range(0,10): print (i)' # 这是一句代码 字符串
#
# compile1 = compile(code1,'','exec') # 预编译 python-> 字节码
# exec (compile1) # 解释
# exec (compile1)
# exec (compile1)
# exec (compile1)
# exec (compile1)
#
# exec(code1) # 编译+解释
# exec(code1)
# exec(code1)
# exec(code1)
# exec(code1) # code3 = 'name = input("please input your name:")'
# compile3 = compile(code3,'','single')
# exec(compile3)
# print(name)
11 help() 函数
# help() 帮助你了解python的
# 方式一
# 输入help() 进入帮助页面,输入数据类型,帮助我们打印具体的帮助信息
# '123'.startswith()
# 输入q退出帮助 # 方式二
# print(help(str))
# print(help('abc'))

12. callable() 判断某一个变量是否可调用

def call(arg):
# if callable(arg):
# arg()
# else:
# print('参数不符合规定')
#
#
# def func():
# print('in func')
# return 1
#
# func2 = 1234
# call(func)
# call(func2)
#
# print(callable(func))
# print(callable(func2))

 

  

day16 Pyhton学习的更多相关文章

  1. Pyhton学习——Day26

    #多态:多态指的是一类事物有多种形态# import abc# class Animal(metaclass = abc.ABCMeta):# 同一类事物:动物# @abc.abstractclass ...

  2. pyhton 学习

    官方学习文档 https://docs.python.org/3/tutorial/

  3. 20190320_head first pyhton学习笔记之构建发布

    1.把代码nester.py放入文件夹nester中,在文件夹中再新建一个setup.py文件,文件内容如下: from distutils.core import setup setup( name ...

  4. Pyhton学习——Day2

    Python开发IDE(工具)Pycharm.eclipse1.循环while 条件 #循环体 #条件为真则执行 #条件为假则执行break用于退出所有循环continue用于退出当前循环 2.Pyc ...

  5. Pyhton学习——Day28

    #上下文协议:文件操作时使用with执行# with open('a.txt','w',encoding='utf-8') as f1:# with语句,为了让一个对象兼容with语句,必须在这个对象 ...

  6. Pyhton学习——Day27

    # hasattr(obj,'name')-->obj.name# getattr(obj,'name',default = 'xxx')--->obj.name# setattr(obj ...

  7. Pyhton学习——Day25

    #面向对象的几个方法#1.静态方法@staticmethod,不能访问类属性,也不能访问实例属性,只是类的工具包#2.类方法:@classmethod,在函数属性前加上类方法,显示为(cls)代表类, ...

  8. Pyhton学习——Day24

    # #面向对象设计:# def dog(name,gender,type):# def jiao(dog):# print('One Dog[%s],wfwfwf'%dog['name'])# def ...

  9. Pyhton学习——Day23

    #re模块方法:findall search#findall:返回所有满足匹配条件的数值,放在列表里#search : #函数会在字符串内查找模式匹配,只到找到第一个匹配然后返回一个包含匹配信息的对象 ...

随机推荐

  1. 20190923-07Linux搜索查找类 000 015

    find 查找文件或者目录 find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端. 1.基本语法 find [搜索范围] [选项] 2.选项说明 表1-27 选项 功能 -n ...

  2. Python中自己不熟悉的知识点记录

    重点笔记: Python  它是动态语言 动态语言的定义:动态编程语言   是   高级程序设计语言   的一个类别,在计算机科学领域已被广泛应用.它是一类   在 运行时可以改变其结构的语言   : ...

  3. Linux:文件和用目录权限基础

    首先,用ls -i 查看文件的信息: 红框框起来的部分:-rw-r--r-- 一共是10位,第一位表示文件类型,-表示文件,d表示文件夹/目录:后面9位则表示权限 其中前三位是该文件/目录所属者的权限 ...

  4. Redis 6.0.8 紧急发布,请尽快升级!

    大家周末愉快啊,今天分享一则重要通知. Redis 6.0.8 于 2020/9/10 日晚紧急发布!!! 可以看到这是一个紧急更新版本,使用了 Redis 6.0.7 Sentinel(哨兵)以及 ...

  5. java 二维码生成(可带图片)springboot版

    本文(2019年6月29日 飞快的蜗牛博客) 有时候,男人和女人是两个完全不同的世界,男人的玩笑和女人的玩笑也完全是两码事,爱的人完全不了解你,你也不要指望一个女人了解你,所以男的不是要求别人怎么样, ...

  6. [LeetCode]671. 二叉树中第二小的节点(递归)

    题目 给定一个非空特殊的二叉树,每个节点都是正数,并且每个节点的子节点数量只能为 2 或 0.如果一个节点有两个子节点的话,那么这个节点的值不大于它的子节点的值. 给出这样的一个二叉树,你需要输出所有 ...

  7. java 多线程-3

    十.同步机制解决Thread继承安全问题 创建三个窗口买票,共100张票.用继承来实现 方式一:同步代码块 public class RunMainExtends { public static vo ...

  8. 从一次编译出发梳理概念: Jetty,Jersey,hk2,glassFish,Javax,Jakarta

    从一次编译出发梳理概念: Jetty,Jersey,hk2,glassFish,Javax,Jakarta 目录 从一次编译出发梳理概念: Jetty,Jersey,hk2,glassFish,Jav ...

  9. vue中axios的使用

    新开了一个vue项目,从头到尾都是一个人做的,所以就自己配置了一个axios.js文件 第一种方法.使用axios 需要下载安装   npm install axios,下载完成之后 在main.js ...

  10. python中yield的用法详解——最简单,最清晰的解释(转载)

    原文链接 首先我要吐槽一下,看程序的过程中遇见了yield这个关键字,然后百度的时候,发现没有一个能简单的让我懂的,讲起来真TM的都是头头是道,什么参数,什么传递的,还口口声声说自己的教程是最简单的, ...