python小知识

input()#输入指令输入进的数据自动转化为字符串,相当于C语言中的printf和scanf相结合

append()#插入函数,每次插入只能插入一个元素,列表可以看作是一个元素,并且插入的元素在末尾

del #删除函数

pop()函数提取和删除元素默认为最后一个元素,也可以指定元素
pop(0)#提取和删除第一个元素

语法:del 列表名[元素的索引]

字典
语法:scores={‘小明’:95,‘小红’:90}
删除字典里键值对的代码是del语句del 字典名[键],而新增键值对要用到赋值语句字典名[键] = 值
字典中值具有唯一性
len()#计算列表或字典的长度

循环
for…in…循环
range() 函数
for i in range(3):
print(i)
运行结果:
0
1
2
range(0,10,3)的意思是:从0数到9(取头不取尾),步长为3。

while循环
i=1
while i<101:
print(i*5)
i=i+1

bool布尔值
会判断成假的字符:False、0、’’(空字符串)、[](空列表)、{}(空字典)、None
其他都是真
in#判断一个元素是否在一堆数据之中

import time#调用time模块
time.sleep(secs(秒数))
生成随机数
random模块中的randint()函数
random.randint(0,9)#生成的随机数在0,9之间

格式符
print(‘血量:’+str(player_life)+’ 攻击:’+str(player_attack))
print(‘血量:%s 攻击:%s’ % (player_life,player_attack))

‘end’是用来控制换行行数和结尾字符
print(‘hello’,end=’’)
print(‘world’)

extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
helloworld#结果

起别名
import numpy as np # 导入 numpy库,下面出现的 np 即 numpy库
比如我们觉得import story太长,就可以用import story as s语句,意思是为“story”取个别名为“s”。

求平均值
scores1 = [91, 95, 97, 99, 92, 93, 96, 98]
average = np.mean(scores1)

x ** y 表示 x的y次幂

函数
随机功能我们可以用random模块中的random.choice()函数来
import random
#引入random模块

appetizer = [‘话梅花生’,‘拍黄瓜’,‘凉拌三丝’]
def coupon(money):
if money < 5:
a = random.choice(appetizer)
return a
elif 5 <= money < 10:
b = random.choice (appetizer)
return b, ‘溏心蛋’

print(coupon(3))
print(coupon(6))

同时定义多个变量,来接收元组中的多个元素(看最后四行代码,直接运行即可)
import random
appetizer = [‘话梅花生’, ‘拍黄瓜’, ‘凉拌三丝’]
def coupon(money):
if money < 5:
a = random.choice(appetizer)
return a, ‘’
elif 5 <= money < 10:
b = random.choice(appetizer)
return b, ‘溏心蛋’
dish, egg = coupon(7)
#元组的两个元素分别赋值给变量dish和egg
print(dish)
print(egg)

global它可以将局部变量声明为全局变量

类和对象
class Computer:#类的创建

screen = True#类的属性创建

def start(self):#类的方法创建
    print('电脑正在开机中……')#方法具体的执行过程

注:在类中赋值的变量叫作属性,类中定义的函数叫作方法
实例方法是指类中参数带self的函数,是类方法的一种形式,也是最常用的用法

定义初始化方法的格式是def init(self),是由init加左右两边的【双】下划线组成
初始化方法的作用在于:当每个实例对象创建时,该方法内的代码无须调用就会自动运行。
例一:
class Chinese:

def __init__(self): 
    print('很高兴遇见你,我是初始化方法')

person = Chinese()
#运行结果:很高兴遇见你,我是初始化方法
例二:
class Chinese:
def init (self):
self.mouth = 1 # self.不能丢
self.eye = 2

def body(self):
    print('我有%s张嘴巴' % self.mouth)
    print('我有%s只眼睛' % self.eye)

person = Chinese()
person.body()
#结果:
我有1张嘴巴
我有2只眼睛

类的继承和定制
class A(B):
A:子类名
B:父类名

函数isinstance(),可以用来判断某个实例是否属于某个类
print(isinstance(1,int))
#判断1是否为整数类的实例
print(isinstance(1,str))

print(isinstance(1,(int,str)))
#判断实例是否属于元组里几个类中的一个
#结果:
True
False
True

只要在类中定义了__str__(self)方法,那么当使用print打印实例对象的时候,
就会直接打印出在这个方法中return的数据。
例如:
class Book:

def __init__(self, name, author, comment, state = 0):
    self.name = name
    self.author = author
    self.comment = comment
    self.state = state

def __str__(self):
    if self.state == 0:
        status = '未借出'
    else:
        status = '已借出'
    return '名称:《%s》 作者:%s 推荐语:%s\n状态:%s ' % (self.name, self.author, self.comment, status)

book1 = Book(‘像自由一样美丽’,‘林达’,‘你要用光明来定义黑暗,用黑暗来定义光明’)
#传入参数,创建实例对象
print(book1)
#直接打印对象即可,不能写成print(book1.str())

解码与编码
编码,即将人类语言转换为计算机语言,就是【编码】encode();反之,就是【解码】decode()

例子:
print(‘吴枫’.encode(‘utf-8’))
print(‘吴枫’.encode(‘gbk’))
print(b’\xe5\x90\xb4\xe6\x9e\xab’.decode(‘utf-8’))
print(b’\xce\xe2\xb7\xe3’.decode(‘gbk’))
结果:
b’\xe5\x90\xb4\xe6\x9e\xab’
b’\xce\xe2\xb7\xe3’
吴枫
吴枫

文件的读写
file1 = open(’/Users/Ted/Desktop/test/abc.txt’,‘r’,encoding=‘utf-8’)
Windows系统里,常用\来表示绝对路径,/来表示相对路径,所以当你把文件拖入终端的时候,绝对路径就变成:
C:\Users\Ted\Desktop\test\abc.txt
\在Python中是转义字符,所以时常会有冲突。为了避坑,Windows的绝对路径通常要稍作处理,写成以下两种格式;
pen(‘C:\Users\Ted\Desktop\test\abc.txt’)
#将’‘替换成’\’
open(r’C:\Users\Ted\Desktop\test\abc.txt’)
#在路径前加上字母r
encoding=‘utf-8’,表示的是返回的数据采用何种编码,一般采用utf-8或者gbk。

读写的两种方法:
#普通写法
file1 = open(‘abc.txt’,‘a’)
file1.write(‘张无忌’)
file1.close()

#使用with关键字的写法
with open(‘abc.txt’,‘a’) as file1:
#with open(‘文件地址’,‘读写模式’) as 变量名:
#格式:冒号不能丢
file1.write(‘张无忌’)
#格式:对文件的操作要缩进
#格式:无需用close()关闭

file1 = open(’/Users/Ted/Desktop/scores.txt’,‘r’,encoding=‘utf-8’)
file_lines = file1.readlines()
file1.close()
for i in file_lines: #用for…in…把每一行的数据遍历
data =i.split() #把字符串切分成更细的一个个的字符串
print(data) #打印出来看看
结果:
[‘罗恩’, ‘23’, ‘35’, ‘44’]
split()是把字符串分割的,而还有一个join()函数,是把字符串合并的。
a=[‘c’,‘a’,‘t’]
b=’’
print(b.join(a))
c=’-’
print(c.join(a))
结果:
cat
c-a-t

模块
import 模块名#导入模块
from … import …语句可以让你从模块中导入一个指定的部分到当前模块
当我们需要从模块中指定所有内容直接使用时,可以写成【from xx模块 import *】的形式,
*代表“模块中所有的变量、函数、类”

if name == ‘main
#xx.py文件
代码块1…
if name == ‘main’:
代码块2…
当xx.py文件被直接运行时代码块2运行
当xx.py文件被作为模块调用时,代码2不运行

可以使用dir()函数查看一个模块
import random # 调用random模块
print(dir(random))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值