1.字符串拼接可以不使用+号

name = "this " "is " "a " "string"

2.使用''' ‘’‘ / “”“ ”“”可以实现多行字符串

name = """da's'd'sa'da

adsasda

a'd's'da'da    “”“

3.可以同时赋值多变量

a,b = 0,1

4.数值的除法(/)总是返回一个浮点数,要获取整数使用//操作符

5.如果你不想让反斜杠发生转义,可以在字符串前面添加一个r,表示原始字符串:

>>> print('C:\some\name')
C:\some
ame
>>> print(r'C:\some\name')
C:\some\name

6.在每行最后一个字符后使用反斜线来说明下一行是上一行逻辑上的延续

aa = '123'\
'456'
print(aa)

7.若局部变量与全局变量同名,则在函数内中优先使用局部变量,并且局部变量的值改变不会影响全局变量,除非局部变量增加global关键字,则直接使用的是全局变量

8.字典的遍历

for k,v in dic.items():

  print(k,v)

9.重写父类的方法,不需要其他标识,只需在子类中定义与父类同名的方法即可

多重继承:class Dog(Animal,AA)  同时继承Animal和AA类

10.python获取本机ip(Linux)

import psutil
def get_netcard():
netcard_info = []
info = psutil.net_if_addrs()
for k,v in info.items():
for item in v:
if item[0] == 2 and not item[1]=='127.0.0.1' and item[1].startswith('192'):
netcard_info.append(item[1])
return netcard_info
11.出现模块未找到的解决办法
p = os.path.dirname(os.path.dirname((os.path.abspath(__file__))))
if p not in sys.path:
sys.path.append(p) 12.python判断字符串、集合、数组、字典是否为空
  if not variable_name:
    #如果不为空
    print('不为空') 13.列表推导式
for循环的简写,一个for循环,然后前面定义一个变量进行变量的保存
my_list = [value for value in range(0,5)] 14.global的使用
当需要改变内存地址的时候,使用global,当不需要改变内存地址的时候,不需要使用global
例如:
s1 = [1,2,3]
def change():
  #引用类型修改不需要改变内存地址
  s1.append(4)
  print(s1)
# 1,2,3,4
s1 = 1
def change():
  #基本数据类型修改需要改变内存地址
  global s1
  s1 = 2
  print(s1)
#2
15.语法糖的使用
定义一个记录日志的语法糖函数         解释:先定义一个装饰器的函数log,当编译器发现函数有装饰器后,将该函数传入装饰器函数中,获得装饰器函数返回的新函数,然后执行新函数,将参数传入,若要获得返回值,则在
                          inner函数里写return值
def log(func):
  def inner():
    print('调用函数的时间')
    func()
  return inner 用法
@log
def sum(a,b):
  result = a+b
  print(result)
sum(1,2)
#调用函数的时间
#3 16.python 单例设计模式
class Animal(object):

    __instance = None

    def __new__(cls, *args, **kwargs):
if cls.__instance:
return cls.__instance
else:
cls.__instance = object.__new__(cls)
return cls.__instance a1 = Animal()
a2 = Animal() print(id(a1))
print(id(a2))

17.python 指定特定属性,不允许动态新增属性

class Animal(object):

  # 定义该类型只有这2个属性

  __slots__ = ('name','age')

18. __all__的使用

__all__ 一般用于当使用 from 包/模块 import * 的时候产生作用

如果在模块中A顶部定义了__all__=['function_name']

则其他模块中from A import *,则只会导入__all__中定义的function_name

如果是包,则__all__需要定义在__init__.py文件中

项目结构

model
--__init__.py
--first_model.py
--second_model.py

outside_model.py

如果outside_model.py中使用from包名,import *不会导入包里所有的模块
需要使用__all__指定导入的模块,在__init__.py中定义
__all__ = ['first_model','second_model']

19.可迭代对象

for循环可以直接遍历取值的对象:列表、元祖、字符串、集合、range

判断对象是否是可迭代对象

from collections import Iterable

result = isinstance([1,2],Iterable)

返回True,就是可迭代对象

20.python获取各个目录的办法

import os, sys

print('__file__:', __file__)
print('realpath of __file__:', os.path.realpath(__file__))
print('sys.executable:', sys.executable)
print('realpath of sys.executable:', os.path.realpath(sys.executable))
print('sys.argv[0]:', sys.argv[0])
print('realpath of sys.argv[0]:', os.path.realpath(sys.argv[0]))
print('sys.path[0]:', sys.path[0])
print('realpath of sys.path[0]:', os.path.realpath(sys.path[0]))
  

												

Python的基础知识,不同于其他编程语言的更多相关文章

  1. Python数据挖掘——基础知识

    Python数据挖掘——基础知识 数据挖掘又称从数据中 挖掘知识.知识提取.数据/模式分析 即为:从数据中发现知识的过程 1.数据清理 (消除噪声,删除不一致数据) 2.数据集成 (多种数据源 组合在 ...

  2. Python 面向对象基础知识

    面向对象基础知识 1.什么是面向对象编程? - 以前使用函数 - 类 + 对象 2.什么是类什么是对象,又有什么关系? class 类: def 函数1(): pass def 函数2(): pass ...

  3. python 爬虫基础知识一

    网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本. 网络爬虫必备知识点 1. Python基础知识2. P ...

  4. Python:基础知识

    python是一种解释型.面向对象的.带有动态语义的高级程序语言. 一.下载安装 官网下载地址:https://www.python.org/downloads 下载后执行安装文件,按照默认安装顺序安 ...

  5. Python学习-基础知识-2

    目录 Python基础知识2 一.二进制 二.文字编码-基础 为什么要有文字编码? 有哪些编码格式? 如何解决不同国家不兼容的编码格式? unicode编码格式的缺点 如何既能全球通用还可以规避uni ...

  6. 第2章 Python编程基础知识 第2.1节 简单的Python数据类型、变量赋值及输入输出

    第三节 简单的Python数据类型.变量赋值及输入输出 Python是一门解释性语言,它的执行依赖于Python提供的执行环境,前面一章介绍了Python环境安装.WINDOWS系列Python编辑和 ...

  7. 10分钟学会Python函数基础知识

    看完本文大概需要8分钟,看完后,仔细看下代码,认真回一下,函数基本知识就OK了.最好还是把代码敲一下. 一.函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运 ...

  8. Python入门 ---基础知识

    Python入门不知道这些你还是承早放弃吧!真的 Python 简介 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言 ...

  9. 关于python的基础知识

    一,编程语言的类型: 1.编译型 2.解释型 3.静态语言 4.动态语言 5.强类型定义语言 6.弱类型定义语言 编译型vs解释型 编译型: 优点:编译器一般会有预编译的过程对代码进行优化.因为编译只 ...

随机推荐

  1. 阻塞队列BlockingQueue之ASynchronousQueue

    一.SynchronousQueue简介 Java 6的并发编程包中的SynchronousQueue是一个没有数据缓冲的BlockingQueue,生产者线程对其的插入操作put必须等待消费者的移除 ...

  2. 素问 - REITs

    摘自<小韭的学习圈> Q 一直以来对REITs感兴趣,看过您微信公众号对REITs的分析,年化8-10%,长期收益稳定,且与其他投资品种关键性低,是很不错的分散配置选择. 您推荐的广发美国 ...

  3. Go网络编程UDP

    package main import ( "fmt" "net" "strings" ) // UDP server func main( ...

  4. SQLAlchemy -高级查询

    查询 # -*- coding: utf-8 -*-   from sqlalchemy.orm import sessionmaker   from SQLAlchemy.create import ...

  5. 后台怎么区分接口要写在哪个service类中呢(根据service服务区分)

    1,明确页面要实现什么功能,则页面对应的controller要写对应的controller方法 2,这个功能最终要由谁实现完成,在对应的service中药实现这个功能 3,这个接口的实现就写在最终完成 ...

  6. TCL Strings

    append    Append values to variable binary      Insert and extract fields from binary strings regexp ...

  7. pyqt:布局删除小部件

    参照:https://stackoverflow.com/questions/5899826/pyqt-how-to-remove-a-widget import sip layout.removeW ...

  8. oracle增加字段,循环

    alter table PARAMETETER_CONFIGURATION add (INPUT_IS VARCHAR2(20) ): declare sum_i int:=0; --定义整型变量,存 ...

  9. 1、json背景

    教程链接 链接:http://pan.baidu.com/s/1mil4M1M 密码:vwsn JSON (JavaScript对象表示法)是一种轻量级的基于文本的开放标准,被设计用于可读的数据交换, ...

  10. 【转】 WordPress数据库及各表结构分析

    默认WordPress一共有以下11个表.这里加上了默认的表前缀 wp_ . wp_commentmeta:存储评论的元数据wp_comments:存储评论wp_links:存储友情链接(Blogro ...