Python 语法杂项
Python 语法杂项
阿豪boy 发表于6个月前
Python 语法杂项
  • 发表于 6个月前
  • 阅读 6
  • 收藏 0
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

输出多重列表 

movie = ["a", "b", "c", [1, 2, 3, ['ahao', 'bbb']], 'd']


def print_list(data, level):
    for obj in data:

        if isinstance(obj, list):
            level = level + 1
            print_list(obj, level)
        else:
            # 输出指定字符串level次
            print('\t' * level, end='')
            print(obj)


print_list(movie, 0)

 

去除空格

s = ' x y z '

print(s.strip())
print(s.lstrip())
print(s.rstrip())
print(s.replace(' ', ''))

x y z
x y z 
 x y z
xyz

 

 

字段类型

class Stu:
    def __init__(self,name="none",score=0.0):
        #两个下划线,表示private作用域
        self.__name=name
        self.__score=score

    def getScore(self):
        return self.__score

    def show(self):
        print("name=",self.__name,"score=",self.__score)

s=Stu("Joy",10)
s.show()
name= Joy score= 10

 

 

#字符串转换为数字
r = eval(input("enter a num:\n"))
area=r*r
print("area=",area)

 

 

x,y = eval(input("enter 2 nums(,间隔)\n"))

print("x=",x,"y=",y)

#交换
x,y = y,x
print("x=",x,"y=",y)

#小数除法
print(2/3)

#整数除法
print(2//3)

#任意次幂
print(2.2**2)

 

简单随机数

import random
n= random.randint(1,100)
print(n)
if n > 90:
    print("A")
elif n>80:
    print("B")
else:
    print("C")

 

 

加法表

for x in range(1, 9 + 1):
    for y in range(1, x + 1):
        print(x, "+", y, "=", x + y, end = '\t')
        print("\n")
输出
1+1=2	
2+1=3	2+2=4	
3+1=4	3+2=5	3+3=6	
4+1=5	4+2=6	4+3=7	4+4=8	
5+1=6	5+2=7	5+3=8	5+4=9	5+5=10	
6+1=7	6+2=8	6+3=9	6+4=10	6+5=11	6+6=12	
7+1=8	7+2=9	7+3=10	7+4=11	7+5=12	7+6=13	7+7=14	
8+1=9	8+2=10	8+3=11	8+4=12	8+5=13	8+6=14	8+7=15	8+8=16	
9+1=10	9+2=11	9+3=12	9+4=13	9+5=14	9+6=15	9+7=16	9+8=17	9+9=18	

 

 

from sqlalchemy import Column, String, create_engine
from sqlalchemy import Float
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base


'''
将csv文件导入到数据库,格式为第一行是列名
每行数用逗号隔开,存放一律按照字符串存放,表名即为文件名称
'''
# 创建对象的基类:
Base = declarative_base()

# 定义User对象:
class stu(Base):
    # 表的名字:
    __tablename__ = 'stu'

    # 表的结构:
    id = Column(String(128), primary_key=True)
    name = Column(String(128))
    score=Column(Float)

def getSession():
    # 初始化数据库连接:
    engine = create_engine('mysql+mysqlconnector://root:root@localhost:3306/stumgr')
    # 创建DBSession类型:
    DBSession = sessionmaker(bind=engine)
    return DBSession()

# 创建session对象:
session = getSession()
# 创建新User对象:
new_user = stu(id='4455', name='Bob',score=60)
# 添加到session:
session.add(new_user)
# 提交即保存到数据库:
session.commit()


# 创建Session:
session = DBSession()
# 创建Query查询,filter是where条件,最后调用one()返回唯一行,如果调用all()则返回所有行:
user = session.query(stu).filter(stu.id=='2160500100').one()
# 打印类型和对象的name属性:
print('type:', type(user))
print('name:', user.name)
# 关闭Session:
session.close()

 

 

from sqlalchemy import Column, String, create_engine
from sqlalchemy import Float
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
import pymysql
pymysql.install_as_MySQLdb()

# 创建对象的基类:
Base = declarative_base()

# 定义User对象:
class stu(Base):
    # 表的名字:
    __tablename__ = 'stu'

    # 表的结构:
    id = Column(String(128), primary_key=True)
    name = Column(String(128))
    score=Column(Float)

# 初始化数据库连接:
engine = create_engine('mysql+mysqlconnector://root:root@localhost:3306/stumgr')
# 创建DBSession类型:
DBSession = sessionmaker(bind=engine)

print(DBSession)

# 创建session对象:
session = DBSession()
# 创建新User对象:
new_user = stu(id='4455', name='Bob',score=60)
# 添加到session:
session.add(new_user)
# 提交即保存到数据库:
session.commit()


# 创建Session:
session = DBSession()
# 创建Query查询,filter是where条件,最后调用one()返回唯一行,如果调用all()则返回所有行:
user = session.query(stu).filter(stu.id=='2160500100').one()
# 打印类型和对象的name属性:
print('type:', type(user))
print('name:', user.name)
# 关闭Session:
session.close()
输出
type: <class '__main__.stu'>
name: 严育豪

 

 

中文编码乱码

# -*- coding: utf-8 -*-

s = '你好'
print s
import os

lists = os.listdir('imgs')
for i in lists:
    print unicode(i,'gbk')

 

 

删除整个文件夹


def remove_dir(path):
    if os.path.isfile(path ):
        os.remove(path)
    else:
        files = os.listdir(path)
        for i in files:
            remove_dir(path+'//'+i)
        os.removedirs(path)

 

异常处理

'''
捕获异常的话程序不会断掉
会输出1到9
'''
for i in range(10):
    try:
        if i == 5:
            1 / 0
    except Exception as e:
        print(e)
        
    print(i)

 

多进程效果

from multiprocessing import Pool
import os, time, random


# 运行该函数100次需要100秒
def long_time_task():
    time.sleep(1)


# 多进程运行只需要不到两秒
if __name__ == '__main__':
    print('Parent process %s.' % os.getpid())
    p = Pool(100)
    start = time.time()
    for i in range(100):
        p.apply_async(long_time_task)
    print('Waiting for all subprocesses done...')
    p.close()
    p.join()
    end = time.time()
    print('All subprocesses done.')
    print(end - start)

 

对象传递按照类似指针的形式

class Stu:
    def __init__(self,name):
        self.name=name

def fun(s):
    s.name='----'
    print(s.name)
s=Stu('abc')
print(s.name)

fun(s)
print(s.name)
abc
----
----

 

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 9
博文 634
码字总数 480730
×
阿豪boy
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: