跳至主要內容

Python 入门知识

JI,XIAOYONG...大约 3 分钟

基于 Python3.x

Python 文件默认格式.py

首行默认以下命令:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

数据类型

  • 数字

    整数 int 1,2,3

    长整数 long 1112L

    浮点数 float(小数)1.23,3.14

    复数 complex 3.14j

  • 字符串

    'abc',"abc",'''abc‘’‘

    'x'和"x" 区别不大

    '''abc‘’‘文本可以跨行

    字符串前面加 r 或者 R 表示字符串内部不需要转义,否则要用\ 转义

    支持a[0]取值

  • 布尔值

    TrueFalse

    布尔值可以用andornot运算

  • 空值

    None

  • 变量

    命名规则:开头aA_,其后可以包含aA_1

  • 常量

    不能变的变量

集合

  • 列表 list

    [1,2,3,3]

    插入 list.insert(1,'vaule')

    删除 list.pop() / list.pop(1)

  • **元组 tuple **

    (1,2,3,3)

    与列表类似,但是一旦初始化就不能再修改


  • 字典 dict

    键值对,读取快,相当于 java 的 map

  • set

    set([1,2,3])

    键的集合,不能有重复的,相当于 java 的 set

逻辑语句

  • if ... : ... elif ... : ... else : ...
  • for x in xs : ...
  • while x : ...

自定义函数

def fun(n)
	return n

  • return

可以没有 return,默认返回 None

可以 return 多个值,实际上返回的是一个 tuple

  • pass

不想执行任何语句,但是为了符合语法规范,可以用 pass 当做占位符

def fun()
	pass

  • 抛出异常
raise TypeError('an error')

其中 TypeError 需要继承自error或者Exception

  • 参数

位置参数

def fun(arg)
	pass

默认参数

def fun(arg0,arg1 = 1)
	pass

注意 默认参数必须是参数中后面的几位;默认值必须不可变,如 int,string 等

可变参数

def fun(arg,*args)
	pass

*args 表示参数个数可变,可以输入 list/tuple 等,或者依次输入多个参数,用逗号分隔

关键词参数

def fun(arg,**keywords)
	if 'city' in kw:
		pass

**keywords 表示接受关键词作为参数传入,可以传入 dict,或者依次输入多个关键词参数

命名关键词参数

def fun0(args,*,name,age)
	pass
def fun1(arg.*args,name,age)#如果命名关键词前面有可变参数,则不用*分隔
	pass

限制输入的关键字,限制只有 name 和 age 作为关键词参数

使用其他文件的函数

#使用时 sys.fun()
import sys
#使用时直接 fun()
from xxFile import fun
form sys import *
form sys import fun

  • 定义类
class AClass(object):
	'''doc for AClass
	you can use this by
	AClass.__doc__'''
  def __init__(self):
  	#默认的初始化方法
  	pass
  def aFun(self):
  	pass
#创建类对象
a = AClass()
#调用方法
a.aFun()

所有的类方法必须至少有一个参数,推荐命名为 self,系统会自动传入类对象,无需手动传入。

  • 继承
class Father(object):
  def __init__(self):
    print("father")
  def say(self):
    print("i am f")

class Child(Father):
  def __init__(self):
    #子类方法不会自己调用父类方法,需要手动调用
    super(Child,self).__init__()
    #调用父类方法 2:
    #Father.__init__(self)
    print("child")
  def say(self):
    print('i am c')
  def go(self,where):
    print('go to %s'%where)

c = Child() #father child
c.say() #i am c
c.go('home') #go ro home

子类继承父类,则需要在子类定义时传入父类

子类如果有与父类同名方法,则优先调用子类方法,除非子类特别调用父类的方法

文章标题:《Python 入门知识》
本文作者: JI,XIAOYONG
发布时间: 2018/01/20 23:49:17 UTC+8
更新时间: 2023/12/30 16:17:02 UTC+8
written by human, not by AI
本文地址: https://jixiaoyong.github.io/blog/posts/a8f97c56.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 许可协议。转载请注明出处!
你认为这篇文章怎么样?
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.8