python基础学习4-函数、内置函数、os模块、time模块

 

1       函数

1.1     字符串格式化方法

Python中字符串格式化输出的几种方法:

https://www.cnblogs.com/hongzejun/p/7670923.html

字符串格式化另外一种方式format方式

#字符串format()方法

#第一种

import datetime

msg = 欢迎光临{name},今天的日期是{today}‘

msg = msg.format(name = ‘zhangsan‘,today
= datetime.datetime.today())

print(msg)

#第二种

sql = ‘insert into my_user_value({id},{name},{sex},{addr})‘

tmp = sql.format(id=11,name=‘lisi‘,sex=,addr=‘dfdsd‘)

print(tmp)

#第三种

sqla= ‘insert into {} value {}‘.format(‘aaa‘,‘bbb‘)

print(sqla)

#format_map   是对字典字符串格式化

d = {‘name‘:小黑,‘sex‘:}

words = 名字:{name},性别:{sex}‘.format_map(d)

print(words)

Python2的默认字符集编码是ASCII码,如果出现如下错误都是python2中报的:

可以在python2前面添加一个注释-*- coding:utf-8 -*- 即可解决中文报错问题;

python3默认是utf-8(utf-8是unicode编码的子集),添加中文不会报错。

name = 小黑

FILE_NAME = ‘goods.json‘   #变量名如果是大写的表示常量,常量表示变量值一般都不会怎么变化的

1.2    
全局变量与局部变量

name = 小黑

FILE_NAME = ‘goods.json‘   #变量名如果是大写的表示常量,常量表示变量值一般都不会怎么变化的

#局部变量:在函数里面定义的变量都是局部变量,除了函数之外就不能用了

#全局变量:在文件最上面定义的这个变量就是全局变量

def hhh():

name = 小白

print(name)

hhh()

global name     #在函数里如果需要修改全局变量的值,则用global声明一下,一般不建议使用全局变量,因为全局变量一直占用内存

字典和list这种可变变量,不需要用golbal来声明,就可以直接修改了

1.3    
可变参数

可变参数(也称为参数组):不是必填的,没有限制参数个数,一般参数比较多的时候可以使用此方法实现;

在参数前面添加一个*号:

def send_mail(*email):

print(‘email..‘,email)

send_mail(‘[email protected]‘)

send_mail(‘[email protected]‘,‘[email protected]‘,‘[email protected]‘)

send_mail()

示例:

def run(name,*args):

print(name)

print(‘args:‘,args)

run(‘zhangsan‘,‘22‘,‘beijing‘,天通苑)

将zhangsan传给了name,其他的字符串都传给了args

函数return多个值时,默认放在一个元组中,也可以用多个变量接收return的值

def nhy():

name = ‘niuhanyang‘

sex =

age= 18

return name,sex,age

res = nhy()                    #默认存放在一个元组中

print(res)

a,b,c = nhy()                 #也可以使用多个变量接收return的值

print(a,b,c)

#位置参数(必填参数),默认值参数(不必填),可变参数(不必填,不限制参数个数)

#位置参数

def op_db(ip,port,db,user,passwd,sql):

print(连接mysql操作数据库)

pass

op_db(‘192.168.1.1‘,3306,‘aaa‘,‘root‘,‘123456‘,‘select‘)

op_db(‘192.168.1.1‘,‘3306‘,user=‘root‘,passwd=‘123456‘,db=‘jzx‘,sql=‘insert‘)

#关键字参数:在参数前面添加两个**号,不必填,不限制参数个数,传的参数放在了字典里面

print(‘------关键字参数1------‘)

def my(**info):

print(info)

my(name=‘haha‘,sex=,age=18)

my()

my(type=‘car‘,a=1,c=1)

print(‘------必填参数+关键字参数2------‘)

def my(name,**info):

print(name)

print(info)

my(‘xiaohei‘,a=‘aaaa‘,b=‘bbbbb‘)        #两个**号关键字参数必须的指定谁等于谁,不指定会报错

print(‘------多种参数1------‘)

#如果多种类型的参数一起使用,则必须是按位置参数->默认参数->可变参数->关键字参数的顺序填写。

def my(name,sex=,*args,**kwargs):

print(name)

print(sex)

print(args)

print(kwargs)

my(‘xiaohei‘)

my(‘xiaohei‘,‘hhh‘,‘args‘,‘args2‘,k=‘1‘,k2=‘2‘)

1.4    
递归

递归,即函数自己调用自己,递归最多循环999次。用递归的话,必须得有一个明确的结束条件;用递归能实现的也可以使用循环实现。

def my2():

num = input(输入一个数字:)

num = int(num)

if num%2 !=0:

print(请输入偶数)

return my2()

my2()

2      
内置函数

Python内置函数:

Print

input

int

dict

set

list

str

len

open

tuple

type

max #取最大值

dir #看这个对象里面有哪些方法

msg =‘hello‘

print(dir(msg))

sorted #排序

print(chr(97)) #打印数字对应的ascii

print(ord(‘b’)) #打印字符串对应的ascii

round() #保留几位小数

eval #python执行代码

exec #执行python代码

enumerate #枚举方法

#同时获取下标以及元素的方法:

#方法一

stus = [张三,‘李四,‘王五]

for i in range(len(stus)):

print(i,stus[i])

#方法二:enumerate枚举方法:

for index,s in enumerate(stus):

print(index,s)

指定下表从指定的数值开始,不指定默认从0开始:

Zip #压缩

stus =  [张三,‘李四,‘王五]

sex = [,,]

age = [30,20,22,21]

for name,se,ag in
zip(stus,sex,age):    #zip将多个list压缩到一起

print(name,se,ag)

如果list元素不一样多,则循环最少的。

Map          #循环帮你调用函数

Filter

3      
模块

一个python文件就是一个模块

3.1    
标准模块

标准模块:python自带的模块就是标准模块,也就是可以直接import进来的标准模块,如:

import json

import random

import datetime

import time

import os

3.2    
第三方模块

第三方模块:别人写好的模块,你安装完之后就能用

3.2.1  pip安装

第三方模块需要自己安装,使用pip源方法进行安装

pip install +第三方模块名

pip install pymysql

如果pip命令不存在的,则直接到python中安装目录(D:\Miniconda3\Scripts)的pip添加到环境变量中去;

如果pip命令有,但是还是不能安装,则用where pip查看下面是否是有多个pip导致的,将非python下的pip重命名即可解决;

如果装了多个版本的python,则下载第三方库的方法为:

python2 –m pip install xxx

python3 –m pip install xxx

3.2.2  手动安装

先从python官方网站(https://pypi.org)上搜索需要安装的模块:

.whl后缀结尾的文件安装方法(使用绝对路径方法进行安装):

pip install
D:\pythonbao\redis-2.10.6-py2.py3-none-any.whl

.tar.gz压缩包的文件安装方法:

先解压文件,进入到解压的文件目录下,在地址栏上输入cmd进入到该路径下(或者在该解压文件夹下按住shift键,右键选择“在此处打开命令行窗口”),在打开的窗口下执行python setup.py install。

Pycharm安装第三方模块的方法(这个不是太好用):

3.3    
自己写的模块

自己写的:自己写的python文件

3.4    
常用模块

3.4.1  os模块

import os

print(os.getcwd())  #取当前的路径

os.mkdir(‘spz‘#在当前目录下创建一个文件夹

os.mkdir(‘d:\\aaa‘#在绝对路径下创建文件夹

os.makedirs(‘spz2‘#在当前目录下创建一个文件夹,

os.makedirs(‘stu\\laowang‘#父目录不存在时,会自动帮忙创建父目录,而mkdir不会;

print(os.listdir(‘D:\\pythonscript\\day5‘))  #获取某个路径下的所有文件

# for i in range(10):

#    
os.mkdir(‘D:\\pythonscript\\day5\\test%s‘%i)

#把末尾是偶数的文件夹中,创建一个a.txt文件,里面随便写点东西

#思路如下:

#1、获取到这个目录下所有的文件夹,os.listdir(‘‘)

#2、判断文件夹的名字最后一位是不是偶数

#3、如果是偶数的,在这个文件里面f = open(a.txt) f.write(‘xxxx‘)

for dir in os.listdir(‘D:\\pythonscript\\day5‘):

if dir[-1].isdigit():

if int(dir[-1])%2==0:

abs_path = r‘D:\\pythonscript\\day5\\%s\\a.txt‘%dir

with open(abs_path,‘w‘) as fw:

fw.write(‘test‘)

#拼接路径,会自动识别路径分隔符

print(os.path.join(‘day5‘,‘test0‘,‘a.txt‘))

print(os.sep)   #显示当前系统文件路径分隔符

print(os.path.dirname(‘D:\\pythonsript\\day5\\test0\\a.txt‘))  #获取父目录的路径

os.path.getsize()  
#获取文件大小的

3.4.2  time模块

import time

#时间戳,从unix元年开始到现在过的秒数

#格式化号的时间2018-07-01

print(time.time())  #获取当前时间戳

print(time.strftime(‘%Y-%m-%d %H:%M:%S‘))  #获取格式化好的时间

print(time.strftime(‘%y%m%d‘))  #%Y%y有点区别

#时间戳和格式化时间转换

#时间元组

print(time.gmtime())    #把时间戳转成时间元组,如果不传时间戳,那么取的是标准时区的时间

print(time.localtime()) #取当地时区的时间元组

print(time.localtime(1530436244-864000))

print(time.asctime(time.localtime(1530436244-864000)))

print(time.strftime(‘%Y%m%d%H%M%S‘,time.localtime(1530436244-864000)))

#时间戳转格式化好的时间

#1、先把时间戳转成时间元组

#2、再把时间元组转成格式化好的时间

def timestampToStr(timestamp=None,format=‘%Y%m%d%H%M%S‘):

if timestamp:

time_tuple =
time.localtime(timestamp)  #转成时间元组

return time.strftime(format,time_tuple)

return time.strftime(format)

res = timestampToStr(1530436244,‘%Y%m%d‘)

res2 = timestampToStr()

print(res,res2)

#格式化好的时间转时间戳

#1、先把格式化好的时间转成时间元组

#2、再把时间元组转化成时间戳

time1 = time.strptime(‘20180701‘,‘%Y%m%d‘)

print(time.mktime(time1))

def strToTimestamp(format_time=None,format=‘%Y%m%d%H%M%S‘):

if format_time:

time_tuple =
time.strptime(format_time,format)

return int(time.mktime(time_tuple))

return int(time.time())

t1 = strToTimestamp(‘20180702020202‘)

t2 = strToTimestamp()

print(t1,t2)

原文地址:https://www.cnblogs.com/better0903/p/9275879.html

时间: 07-04

python基础学习4-函数、内置函数、os模块、time模块的相关文章

python基础12_匿名_内置函数

一个二分查找的示例: # 二分查找 示例 data = [1, 3, 6, 7, 9, 12, 14, 16, 17, 18, 20, 21, 22, 23, 30, 32, 33, 35, 36, 66] def binary_search(dataset, find_num): print(dataset) if len(dataset) > 1: mid = int(len(dataset) / 2) if dataset[mid] == find_num: # find it print

Python基础(七)内置函数

今天来介绍一下Python解释器包含的一系列的内置函数,下面表格按字母顺序列出了内置函数: 下面就一一介绍一下内置函数的用法: 1.abs() 返回一个数值的绝对值,可以是整数或浮点数等. 1 2 3 4 5 6 print(abs(-18))          print(abs(0.15)) result: 18 0.15 2.all(iterable) 如果iterable的所有元素不为0.''.False或者iterable为空,all(iterable)返回True,否则返回False

Python自学之路——Python基础(四)内置函数

对上表一些比较重要常用的内置函数做一个整理 chr()与ord()     chr()是将ASCII中十进制编号转换成相应的字符,而ord()刚好相反 c = chr(49) o = ord('1') print(c) print(o) 输出结果: 1 49 知道了chr()的基本用法,可以利用它来生成一个字母验证码,因为验证码都是随机生成的,所以这里要涉及到random模块.在ASCII中,大写字母的十进制编号是从65到90. 小写字母是97到122 1 import random 2 li

Python基础第十一天——内置函数的补充、内置函数与lambda、递归

一.拾遗 1.生成器表达式形式的多个函数之间的协同工作. 例:做一包子吃一个包子 优点:更省内存. 以上例子的原理: 重点★★★★★ 源代码: import time import random # 装饰器 def init(func): '''生成器表达式的初始化''' def wrapper(*args,**kwargs): g=func(*args,**kwargs) next(g) return g return wrapper def cook(people,count): '''定义

【python基础语法】常用内置函数、关键字、方法和之间的区别(小结)

''' 关键字: False:bool数据类型 True:bool数据类型 None:表示数据的内容为空 and:逻辑运算符:与 or:逻辑运算符:或 not:逻辑运算符:非 in:身份运算符,判断变量是否在序列中 is :成员运算符,判断变量是否为某个类的实例 del:删除变量或序列的值 assert:列表排序,默认从小到大排序,升序,加参数reverse=True,按降序进行排序 with:简化Python的语句 pass:表示通过(一般用来占位的) if elif else:条件判断 wh

python基础第10天-内置函数

基础数据类型相关 数字相关 数据类型转换 bool() 转布尔类型 1 print(bool([])) # False 2 print(bool('')) # False 3 print(bool(0)) # False 4 print(bool({})) # False 5 print(bool(())) # False int() 转整形 1 print(int('3')) # 3 float() 转浮点型 1 print(float('3')) # 3.0 complex() 转复数类型

python基础三元表达式和内置函数列表

三元运算  result = 值1 if 条件 else 值2 如果条件为真:result = 值1 如果条件为假:result = 值2

python学习笔记11-python内置函数

python学习笔记11-python内置函数 一.查看python的函数介绍: https://docs.python.org/2/library/ 二.python内置函数 1.abs获取绝对值: 通过python官网查看abs abs(x) Return the absolute value of a number. The argument may be a plain or long integer or a floating point number. If the argument

php学习之重要内置函数

1. require_once()函数 此函数在脚本执行期间包含并执行指定的文件,与require语句类似,唯一区别是如果该文件中的代码已经被包含了,则不会再次包含. require_once()函数保证在脚本执行期间,对于可能出现相同的文件被包含超过一次的 情况下,想确保它包含一次以避免函数重定义,变量重新赋值等问题. 与include()函数一样,此函数执行成功则返回true. 同时,我们要注意到在类似window这样的对大小写不敏感的操作系统中,require_once()和include

python全栈开发-Day13 内置函数

一.内置函数 注意:内置函数id()可以返回一个对象的身份,返回值为整数. 这个整数通常对应与该对象在内存中的位置,但这与python的具体实现有关,不应该作为对身份的定义,即不够精准,最精准的还是以内存地址为准. is运算符用于比较两个对象的身份,等号比较两个对象的值,内置函数type()则返回一个对象的类型 #更多内置函数:https://docs.python.org/3/library/functions.html?highlight=built#ascii 二.内置函数详情 1.abs