python基础1

python基础1

一些python基础知识,以防忘记

行与缩进

python使用缩进来表示代码块,不需要使用大括号

eg:

# 判断条件没括号
if True:
    print(1)
else:
    print(2)
# while循环写法
while True:
    print(1)

多行语句

Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠来实现多行语句。

#不缩进对齐也行(这里指的是不影响多行语句这个功能),为了易读,最好缩进对齐
total = item1 + \
		item2 + \
    	item3

字符串

  1. python中单引号和双引号使用完全相同

  2. 使用三引号(’’'或""")可以指定一个多行字符串。

    eg:

    str = """a,
    aaaa"""
    
  3. 字符串可以用 + 运算符连接在一起,用 * 运算符重复。

    eg:

    str = 'aaa'
    str1 = 'bbb'
    str2 = str + str1
    #str2 = 'aaabbb'
    str3 = str*2
    #str3 = 'aaaaaa'
    
  4. Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始(倒数第1个位置)。

    eg:

    str = 'abc'
    print(str[0:-1])#表示字符串切片,-1表示倒数第一个位置,切片是左闭右开的
    #输出ab
    
  5. Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。

  6. 字符串的截取的语法格式如下:变量[头下标:尾下标:步长]

    str = 'python'
    print(str)#输出python
    print(str[:2])#表示0-1序号的字符串,输出py
    print(str[1:])#表示1-尾部的字符串,输出ython
    print(str[0:7:2])#步长为二,输出pto
    print(str[6::-1])#反向,输出ohtyp
    

Print 输出

print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=""

print(30,end="")
print(40)
#输出3040

print(30,end="aaa")
print(40)
#输出30aaa40

import 与 from…import

在 python 用 import 或者 from…import 来导入相应的模块。

将整个模块(somemodule)导入,格式为: import somemodule

从某个模块中导入某个函数,格式为: from somemodule import somefunction

从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc

将某个模块中的全部函数导入,格式为: from somemodule import *

控制语句

if 格式:

if expression:
	expression
elif expression:
    expression
else:
    expression

pass

pass表示什么都不做

 while True:
 	pass  # Busy-wait for keyboard interrupt (Ctrl+C),按Ctrl+c可以退出这个循环

函数定义

格式:

def 函数名(参数列表):
	函数体
    return#返回值,没有表示无返回值

默认参数值与C++类似,加个等号完事

默认参数值如果是mutable对象(mutable 对象,比如list,dictionary),那么它将会随着你调用改变而改变(会有累加效果)

def func1(a,b=[])
	b.append(a)
    print(b)
func1(1)#b=[1]
func1(2)#b=[1,2]
func1(3)#b=[1,2,3]

Lambda表达式

C++中的lambda表达式(匿名函数):

//格式:
//[capture list](parameter list) ->return type {function body}
//示例:
auto f3 = [](int x,int y)->int{return x>y?x:y;};

python中的Lambda表达式:

#格式
#lambda parameter list:function body
f = lambda a,b,c:a+b+c
print(f(1,2,3))#6

赋值

  1. 基本形式(形如)

    a = 3
    
  2. 元组及列表拆包赋值

    a,b,c = 1,2,3#也可,这是多个变量赋值,与元组拆包是不一样的
    a,b,c = [1,2,3]# 列表
    d,e,f = (4,5,6)# 元组
    print(a)#输出1
    print(a,b,c,d,e,f)#输出1 2 3 4 5 6
    
  3. 序列赋值
    在新的Python版本中,元组及列表赋值语句已经统一为现在的序列(数据类型,像list,tuple,string等都是序列)赋值语句——任何变量名的序列都可以赋值给任何值的序列。Python会按位置一次赋值一个元素。

    注意:序列长度需要与解包的变量个数相同,否则会报错,如要解决这个问题,可以加个’*'解决(只能使用一次)。

    def printa_b_c(a,b,c):
        print(a,end='*')
        print(b,end='*')
        print(c)
    str = 'abc'
    list1 = [8,9,10]
    tuple1 = (34,'we',89,64)
    
    a,b,c=str
    printa_b_c(a,b,c)
    
    a,b,c=list1
    printa_b_c(a,b,c)
    
    # 解决变量少于序列长度,*号只能使用一次
    a,b,*c=tuple1
    printa_b_c(a,b,c)
    
    a,*b,c=tuple1
    printa_b_c(a,b,c)
    
    *a,b,c=tuple1
    printa_b_c(a,b,c)
    
    #输出如下:
    ​```
    a*b*c
    8*9*10
    34*we*[89, 64]
    34*['we',89]*64
    [34, 'we']*89*64
    ​```
    

reference

1.https://docs.python.org/3/tutorial/index.html

2.https://www.jianshu.com/p/0dda16bfb585

3.https://www.runoob.com/python3/python3-basic-syntax.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值