重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

python函数返回两行,python中返回二进制的函数

python 搜索一个指定txt 的字符串 并输出其下面两行

from tkinter import *

成都创新互联公司主营瑞丽网站建设的网络公司,主营网站建设方案,APP应用开发,瑞丽h5微信平台小程序开发搭建,瑞丽网站营销推广欢迎瑞丽等地区企业咨询

from tkinter import ttk

from tkinter import font

import os

import arrange

# 课程的字典

crslst = {}

crslst_in_num = {}

# GUI

root = Tk()

# frame2

# 右侧的内容

frame2 = ttk.Frame(root, borderwidth=5, relief="sunken")

frame2.grid(column=1, row=0)

# 将数字转换为汉字的字典

numtoch = {1: '一', 2: '二', 3: '三', 4: '四', 5: '五'}

# 设置课表周围周一至周五和1至13的标签

for num in list(range(1, 6)):

ttk.Label(frame2, text='周' + numtoch[num]).grid(column=num, row=0)

emptylist = []

for num in list(range(1, 14)):

ttk.Label(frame2, text='第' + str(num) + '节').grid(column=0, row=num)

# 课表主体

schd1 = Listbox(frame2, height=13)

schd1.grid(column=1, row=1, rowspan=13, sticky=(N, S, E, W))

schd2 = Listbox(frame2, height=13)

schd2.grid(column=2, row=1, rowspan=13, sticky=(N, S, E, W))

schd3 = Listbox(frame2, height=13)

schd3.grid(column=3, row=1, rowspan=13, sticky=(N, S, E, W))

schd4 = Listbox(frame2, height=13)

schd4.grid(column=4, row=1, rowspan=13, sticky=(N, S, E, W))

schd5 = Listbox(frame2, height=13)

schd5.grid(column=5, row=1, rowspan=13, sticky=(N, S, E, W))

# 设置字体

ft = font.Font(family='Microsoft YaHei', size=12, weight='normal')

# 为了便捷将五天的课表作为一list

daylist = (schd1, schd2, schd3, schd4, schd5)

# 设置课表

for day in daylist:

day['selectmode'] = 'extended'

day['exportselection'] = False

for num in range(1, 14):

day.insert(0, '无课')

day['font'] = ft

day['width'] = 10

# 课表下四个按钮和一个combobox

# 改变颜色

def chcolor():

print("\033[1;42m\033[0m")

butdont = ttk.Button(frame2, text='不上课', command=chcolor).grid(column=3, row=15)

# 清除选择

butusel = ttk.Button(frame2, text='清除选择').grid(column=4, row=15)

Label(frame2, text='选择课表').grid(column=0, row=15, columnspan=2, sticky=W)

outputlist = ttk.Combobox(frame2, textvariable=['待选', 'ok'])

outputlist.grid(column=1, row=15, columnspan=2, sticky=E)

# frame1

# 左侧的内容

frame1 = ttk.Frame(root, borderwidth=5, relief="sunken")

frame1.grid(column=0, row=0)

# 设置上方的label

Label(frame1, text='输入课程信息').grid(column=0, row=0, columnspan=2)

# 输入课程号的Label和entry

Label(frame1, text='课程号:').grid(column=0, row=1, sticky=W)

coursenum = StringVar()

inputcoursenum = ttk.Entry(frame1, textvariable=coursenum, width=13)

inputcoursenum.grid(column=1, row=1, sticky=E)

# 已选课程的listbox

Label(frame1, text='已选课程').grid(column=0, row=3, sticky=W)

courselist = Listbox(frame1, height=8, width=13, exportselection=False)

courselist.grid(column=0, row=4, columnspan=2, rowspan=8, sticky=W)

def isrtcrs():  # 加入课程

k = 0

num = 0

print(num, courselist.size())

while num  courselist.size():

if inputcoursenum.get() == courselist.get(num):

k = 1

num += 1

if k == 0:

courselist.insert(0, inputcoursenum.get())

crslst[inputcoursenum.get()] = []

crslst_in_num[inputcoursenum.get()] = []

print(crslst)

print(crslst_in_num)

return

def delcrs():  # 删除课程

# print(courselist.curselection())

# print(courselist.get(courselist.curselection()))

crslst_in_num.pop(courselist.get(courselist.curselection()))

crslst.pop(courselist.get(courselist.curselection()))

courselist.delete(courselist.curselection())

print(crslst)

print(crslst_in_num)

return

def shwtm(*args):  # 当选中一门课程,时间listbox改为对应的时间

print('here')

timelist.delete(0, END)

tmlst = crslst[courselist.get(courselist.curselection())]

if len(tmlst) != 0:

for time in tmlst:

timelist.insert(END, time)

return

# courselist的选中事件

courselist.bind('ListboxSelect', shwtm)

# 加入课程和删除课程的按钮

addcourse = ttk.Button(frame1, text='加入课程', command=isrtcrs).grid(column=0, row=2)

deletcourse = ttk.Button(frame1, text='删除课程', command=delcrs).grid(column=0, row=12)

# 已选课程的时间listbox

Label(frame1, text='时间列表').grid(column=1, row=3, sticky=E)

timelist = Listbox(frame1, height=8, width=13, exportselection=False)

timelist.grid(column=1, row=4, columnspan=2, rowspan=8, sticky=E)

def isrttim():  # 加入时间

num = 1

time = []

time_in_num = []

strofod = ''

for day in daylist:

if len(day.curselection()) != 0:

strofod = numtoch[num]

temp = day.curselection()

for cls in temp:

strofod = strofod + ' ' + str(cls + 1)

time_in_num.append((num - 1) * 13 + (cls + 1))

num += 1

if len(strofod) != 0:

time.append(strofod)

strofod = []

if len(time) != 0:

timelist.insert(END, time)

crslst[courselist.get(courselist.curselection())].append(time)

crslst_in_num[courselist.get(courselist.curselection())].append(time_in_num)

print(crslst)

print(crslst_in_num)

return

def deltim():  # 删除时间

print(timelist.curselection())

for sel in timelist.curselection():

crslst[courselist.get(courselist.curselection())].pop(sel)

crslst_in_num[courselist.get(courselist.curselection())].pop(sel)

timelist.delete(timelist.curselection())

print(crslst)

print(crslst_in_num)

return

# 加入时间和删除时间的按钮

addtime = ttk.Button(frame1, text='加入时间', command=isrttim).grid(column=1, row=2)

delelttime = ttk.Button(frame1, text='删除时间', command=deltim).grid(column=1, row=12)

def creatcourselist():  # 建立课程列文本文档

with open('slist.txt', 'w') as slist:

slist.writelines(str(len(crslst_in_num)) + '\n')  # 课程数

for crs, tlst in crslst_in_num.items():

slist.writelines(crs + '\n')  # 课程名

slist.writelines(str(len(tlst)) + '\n')  # 可选时间数

for time in tlst:

slist.writelines(str(len(time)) + '\n')  # 某一可选时间的节数

for n in time:

slist.writelines(str(n) + '\n')  # 第几节

return

def showoutput():  # 在右侧的选择课表combobox里显示可选课表

filename_list = []

for filename_e in os.listdir('output'):

filename_list.append(filename_e)

outputlist['values'] = filename_list

return

def arrg():  # 排课

print('here')

creatcourselist()

for filename_e in os.listdir('output'):

os.remove('output/' + filename_e)

arrange.arrangement_mod()

showoutput()

return

# 当用户选择某一可选课表时,展示课表

def showcrslist(*args):

print(outputlist.get())

for filename_e in os.listdir('output'):  # 寻找所选项对应的文件

if filename_e == outputlist.get():

with open('output/' + filename_e, 'r') as f_r:  # 打开对应的文件

nr = f_r.readlines()  # 按行读取内容

k = 0

for day in daylist:

day.delete(0, END)  # 删除课表的原有内容

for num in range(1, 14):

# print(nr[k])

# 加入新的内容

if nr[k] == '0\n':

day.insert(END, '')

else:

day.insert(END, nr[k].strip())

k += 1

break  # 完成之后退出循环

return

# 可选课表combobox选择事件

outputlist.bind('ComboboxSelected', showcrslist)

# 排课的按钮

run = ttk.Button(frame1, text='排课', command=arrg).grid(column=0, row=13, columnspan=2)

# frame_search

frame_s = ttk.Frame(root, borderwidth=5, relief='sunken')

frame_s.grid(column=2, row=0)

ttk.Label(frame_s, text='搜索课程').grid(column=0, row=0, columnspan=2)

ttk.Label(frame_s, text='课程号:').grid(column=0, row=1, sticky=E)

crs_num = StringVar()

crs_search = ttk.Entry(frame_s, textvariable=crs_num, width=12).grid(column=1, row=1, sticky=E)

search_crs = ttk.Button(frame_s, text='搜索').grid(column=0, row=2)

addup = ttk.Button(frame_s, text='加入').grid(column=1, row=2)

ttk.Label(frame_s, text='课程号:').grid(column=0, row=3, columnspan=2, sticky=W)

ttk.Label(frame_s, text='课程名:').grid(column=0, row=4, columnspan=2, sticky=W)

ttk.Label(frame_s, text='上课时间:').grid(column=0, row=5, columnspan=2, sticky=W)

root.mainloop()

python如何产生随机矩阵?

numpy.random包可以实现这一功能。numpy包是python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比python自身的嵌套列表结构要高效的多,同时该结构也可以用来表示矩阵。

from

numpy

import

random

randarray

=

random.random(size=(2,4))

random函数接收需要生成随机矩阵的形状的元组作为唯一参数。上面的代码将会返回一个两行四列的随机矩阵,随机数的值位于0到1之间,矩阵是numpy.array类型。除了random函数外,还有生成整数随机矩阵的函数randint等等。

python调用shell返回两行第二行需要输入密码怎么办?import os os.syst

没有办法交互,用ftplib吧

# 例:FTP编程  

from ftplib import FTP  

ftp = FTP()  

timeout = 30  

port = 21  

('192.168.1.188',port,timeout) # 连接FTP服务器  

('UserName','888888') # 登录  

print   # 获得欢迎信息   

('file/test')    # 设置FTP路径  

list =        # 获得目录列表  

for name in list:  

print(name)             # 打印文件名字  

path = 'd:/data/' + name    # 文件保存路径  

f = open(path,'wb')         # 打开要保存文件  

filename = 'RETR ' + name   # 保存FTP文件  

# 保存FTP上的文件  

# 删除FTP文件  

('STOR '+filename, open(path, 'rb')) # 上传FTP文件  

# 退出FTP服务器

如何使用python从文件中读取两行

是最开始的两行还是其中符合条件的两行?

这里只写最初的两行

f = open(文件路径)

s = f.readlines()

two_lines = s[:2]

其中two_lines就是最开始两行

python两行怎么同时出现结果

您好朋友,很高兴为您解答问题!

把print()函数里的end参数修改成空格,python两行就会同时出现结果。

例:1 print("hello world",end=‘ ’)

 2 print("hello again")

输出:1 hello world hello again

扩展知识:

python里print()函数的定义

print() 方法用于打印输出,最常见的一个函数。

希望我的回答能够对您有所帮助,谢谢!


分享名称:python函数返回两行,python中返回二进制的函数
网页网址:http://cqcxhl.cn/article/hsgihc.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP