简单的while 循环结果展示问题

各位高手大家好,因工作需要近期我在尝试写一个脚本: 想要实现以下功能:

从本机指定位置的TXT中读取信息,并存进一个列表numberL之中

逐个处理列表numberL的元素,并将每次处理的单个元素放到单一元素列表a 之中

将已经处理完的元素统统放到列表done 之中

循环2-3 直至numberL中的元素被全部处理完为止

代码如下:

file_path = "D:/PN_TXT/PN_test.txt." # 设置路径
with open(file_path) as file_PN: # 打开文件
lines = file_PN.readlines() #读取文件
PN = ''
for line in lines:
PN +=line.strip() # 将文件置入一行之中
print(PN)

done = []
number = ()
numberL = list(number)
numberL.append(PN)

while len(numberL) > 0:
a= numberL.pop()
done.append(a)
print(a)
print(done)
预计实现的效果类似这样:

图片说明

而最终实现的效果却是这样:

图片说明

2个回答

朋友,看你的代码貌似跟你的中文描述不大一样。而且有点繁琐,很多变量根部不需要啊

#从本机指定位置的TXT中读取信息,并存进一个列表numberL之中
file_path = "D:/PN_TXT/PN_test.txt." 
with open(file_path) as file_PN: 
lines = file_PN.readlines() 
numberL=[]
done=[]
for line in lines:
    PN =line.strip() #原来写的是PN +=line.strip() ,加等干嘛,不是只读一行吗?加等就一行接一行,所有行全写再PN里面了
    numberL.append(PN)

#将每次处理的单个元素放到单一元素列表a 之中
#while len(numberL) > 0:
    #a= numberL.pop()这写法是指numberL删除末尾元素,然后其余赋值给a,这样你的a就是会出现类似这样的情况,第一次a=。。。。。 第二次a=。。。。第三次a=。。。第四次a=。。(这样说你懂了吧?)
    #实际你只想让a的每一个元素记录一个numberL元素
    #那么a就可以不用了啊,因为你可以用numberL[i]来表示numberL当中的一个元素,为啥还要一个单一元素列表呢?
    #你要print(a)实际上可以写成print(numberL[指定第几个])

#最终可以改成这样的循环
for i in range(len(numberL)):
    #在这加上你对numberL的元素的处理操作,假设处理完存放在done里面就可以写 done[i].append(对numberL[i]的操作)
    #假设没有什么处理就写
    done.append[numberL[i]]
    print(done[i])#这里可以实现你的print(a)这句话
    print(done)

你循环的部分没有问题,你可以用一个列表测试,问题在你前面的代码,那部分我没看明白,一个文件处理为一行又放到数组?那不是只有一个元素?

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
while循环里使用resultset第二次循环的时候取不到结果

while循环里重复调用resultset的问题 ``` while(true) { try { //建立连接 Connection new_conn =JdbcUtil.myconn(); PreparedStatement new_ps = null; ResultSet new_rs = null; String find_stu="select * from student where id=?"; new_ps=new_conn.prepareStatement(find_stu); System.out.println(id); new_ps.setObject(1, id);//id为字段名为id的字段 new_rs=ps.executeQuery(); //while(true)的循环循环到第二次这里就进不去了,result取出的结果集为空??? while(new_rs.next()) { System.out.println("1.学生学号:"+new_rs.getInt(2)); System.out.println("2.学生姓名:"+new_rs.getString(4)); System.out.println("3.学生性别:"+new_rs.getString(5)); System.out.println("4.学生年龄:"+new_rs.getInt(6)); System.out.println("5.学生电话:"+new_rs.getLong(7)); /** * 展示该学生已选课程 */ } System.out.println("0.返回"); System.out.print("返回请输入0,修改某一项请输入修改项的序号"); int opr_num; opr_num = in.nextInt(); in.nextLine(); switch (opr_num) { case 1: Change.change_stunum(sec_num); break; case 2: Change.change_stuname(sec_num); break; case 3: Change.change_stusex(sec_num); break; case 4: Change.change_stuage(sec_num); break; case 5: Change.change_stuphone(sec_num); break; case 0: flag=false; break; default: break; } if(flag==false) break; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { } } ```

通过HTML表中的while循环显示数据库中的信息

<div class="post-text" itemprop="text"> <p>I'm trying to fit my adverts into a table. I want to display three of the most popular ads on the home page, in one line. However the information and the photos are not displaying properly at all and they are all over the page. Could someone tell me where I should be placing the closing tag for the while loop? Here is the whole code.</p> <pre><code>&lt;?php include("header.php");?&gt; &lt;!-- Left SIDEBAR --&gt; &lt;?php include("sidebar.php");?&gt; &lt;!-- Right CONTENT --&gt; &lt;div id="right_content"&gt; &lt;h1&gt;Our most popular ads...&lt;/h1&gt; &lt;?php include("functions/connect.php"); $sql = "SELECT * FROM horses ORDER BY likes DESC LIMIT 3"; $result = $conn-&gt;query($sql); if ($result-&gt;num_rows &gt; 0) { echo ""; // output data of each row while($row = $result-&gt;fetch_assoc()) { $hid=$row['HorseID']; // Get image $sqlimg= "SELECT * FROM images where Horse_ID='$hid'"; $resultimg = $conn-&gt;query($sqlimg); $rowimg = $resultimg-&gt;fetch_assoc() ; ?&gt; &lt;div id="ads"&gt; &lt;table&gt; &lt;tr&gt; &lt;td&gt;&lt;img src="uploads/horse1.jpg"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;?php echo $row['HorseName']; ?&gt; &lt;/td&gt; &lt;/tr&gt; &lt;?php } } else { ?&gt; &lt;br /&gt; &lt;div id="alert"&gt;There are no horses to display at the moment.&lt;/div&gt; &lt;?php } $conn-&gt;close(); ?&gt; &lt;/table&gt; &lt;/div&gt; &lt;/div&gt; &lt;?php include("footer.php");?&gt; </code></pre> </div>

如何使用while循环计算和显示所有信息?

<div class="post-text" itemprop="text"> <p>I'm trying to show all information from my mysql database using while loop, of course I could do this without while loop, but I want to show this information organized in html divs.</p> <pre><code>$cnt = mysqli_num_rows(mysqli_query($CONNECT, "SELECT * FROM `reviews`")); echo $cnt; while ($Row = mysqli_fetch_assoc($cnt)) { echo '&lt;div class="panel panel-default"&gt; '.$Row['name'], $Row['text'].' &lt;/div&gt;'; } </code></pre> <p>Whats bad in my code, how I can fix it to make it work?</p> </div>

如何仅在while循环中显示一次值,但显示html循环的长度

<div class="post-text" itemprop="text"> <p>I have a while loop that keeps track of two variables, incrementing them as the condition passes or fails. It is definitely incrementing them but it shows every iteration of the increment. I am only wanting to show the values once the while loop has finished. I know I need to close the loop and then display the value but I can't have that happen as I need the HTML to display multiple times for multiple users. I am wondering how to get the HTML to display multiple times but only have the two variables display for each user.</p> <pre><code>$addedItem = $tradedItem = 0; $sql = "SELECT DISTINCT adminid, log_operation FROM item_log_table WHERE timestamp BETWEEN '$time' and '$time2' ORDER BY adminid ASC"; $result = $db-&gt;prepare($sql); $result-&gt;execute(); while ($row = $result-&gt;fetch()) { $username = $functions-&gt;getUserInfoSingularFromId('username', $row['adminid']); $lastLogin = $functions-&gt;getUserInfoSingularFromId('previous_visit', $row['adminid']); $lastLogin = $adminfunctions-&gt;displayDate($lastLogin); if ($row['log_operation'] == "ADDED ITEM") { $addedItem += 1; } else { $tradedItem += 1; } ?&gt; &lt;div class="row"&gt; &lt;div class="col-lg-12 col-md-12 col-sm-12 col-xs-12" style="border-radius: 16px; margin-top: 25px;"&gt; &lt;div class="well profile col-lg-12 col-md-12 col-sm-12 col-xs-12"&gt; &lt;div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 text-center"&gt; &lt;p style="text-align:center;font-size: smaller;"&gt;&lt;strong&gt;Name | Employee: &lt;/strong&gt;&lt;span class="tags" id="user-status"&gt;&lt;?php echo $username; ?&gt; | &lt;?php echo $row['adminid']; ?&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="text-align:center;font-size: smaller;"&gt;&lt;strong&gt;Date Last Logged In: &lt;/strong&gt;&lt;span class="tags" id="user-status"&gt; &lt;?php echo $lastLogin; ?&gt;&lt;/span&gt;&lt;/p&gt; &lt;div class="col-lg-6 left" style="text-align:center;overflow-wrap: break-word;"&gt; &lt;h4&gt;&lt;p style="text-align: center;"&gt;&lt;strong id="user-globe-rank"&gt;&lt;?php echo $addedItem; ?&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/h4&gt; &lt;p&gt;&lt;small class="label label-success"&gt;Items Added&lt;/small&gt;&lt;/p&gt; &lt;/div&gt; &lt;div class=" col-lg-6 left" style="text-align:center;overflow-wrap: break-word;"&gt; &lt;h4&gt;&lt;p style="text-align: center;"&gt;&lt;strong id="user-college-rank"&gt;&lt;?php echo $tradedItem; ?&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/h4&gt; &lt;p&gt; &lt;small class="label label-warning"&gt;Items Traded&lt;/small&gt;&lt;/p&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;?php } ?&gt; </code></pre> <p><a href="https://i.stack.imgur.com/n1OpI.png" rel="nofollow noreferrer">What it looks like in the loop</a></p> <p>I only want it to show the last iteration of the $addedItem and $tradedItem for each user. Also, excuse the style attributes I'm just prototyping.</p> </div>

有可能将一半的while循环放在一个php标签之间,另一半放在另一个php标签中,就像我在那里展示的那样?

<div class="post-text" itemprop="text"> <p>Is this possible to do? For example the bracket that close the while is in different php tags of the ones that start the while loop.</p> <pre><code>while ($row = $result-&gt;fetch_assoc()) { $code = $row["VAT"]; ?&gt; &lt;option name="Client VAT" value="&lt;?php echo($code); ?&gt;"&gt;&lt;?php echo $code; ?&gt;&lt;/option&gt; &lt;?php } ?&gt; </code></pre> </div>

SQL 两个结果集合成一个结果集

![图片说明](https://img-ask.csdn.net/upload/201610/25/1477377120_520704.png)如图所示 怎么可以吧结果集A、B 合成结果集C 求SQL 谢谢

Foreach循环在执行后返回数据

<div class="post-text" itemprop="text"> <pre><code>&lt;?php $x = 1; while($x &lt;= 5) { echo "The number is: $x &lt;br&gt;"; $x++; } ?&gt; </code></pre> <p>On my localhost server i see while it executes but on another server i see the echo after it executes?</p> <p>Anyone knows what's the mistake?</p> </div>

C++新手问题(死亡循环体)

case 3: //题三 { while (x == 1) { cout << "编程实现:从键盘输入任意多个整数(以输入字符a结束输入),输出第三大的整数\n"; Formatted1(str); cout << "演示功能;" << endl; cout << "Please enter your nums : \n"; ThirdNum(); Formatted1(str); cout << "是否再展示一次?\n请输入1(再展示一次) OR 0(退出): "; cin >> x; } break; } ```void Formatted1(string s) { cout << s; cout << endl; cout << s; cout << endl; } //找第三大的数字 void ThirdNum() { int XX = 0; fir = numeric_limits<int>::min(), sec = numeric_limits<int>::min(), thi = numeric_limits<int>::min(); cin >> XX; while (cin.good()) { if (XX > fir) { thi = sec; sec = fir; fir = XX; } else if (XX > sec && XX < fir) { thi = sec; sec = XX; } else if (XX > thi && XX < sec) { thi = XX; } cin >> XX; } Formatted1(str); if (fir == numeric_limits<int>::min()) c1 = 3; else if (sec == numeric_limits<int>::min()) c1 = 2; else if (thi == numeric_limits<int>::min()) c1 = 1; if (c1 != 0) cout << "you have " << c1 << " numbers not to input .\n"; else cout << "Your thrid number is :" << thi << endl; XX = numeric_limits<int>::min(); return; } 全局变量 int x = 1; //用户输入量 int fir = numeric_limits<int>::min(), sec = numeric_limits<int>::min(), thi = numeric_limits<int>::min(); string str(50, '='); ``` 我的CASE 3是一个死循环, 请各位和我交流一下

AJAX请求在php上进行无限循环

<div class="post-text" itemprop="text"> <p>I have a server that is running and waiting for datas</p> <pre><code> while(true){ $r = socket_recvfrom($sock, $messageRecieved, 512, 0, $remote_ip, $remote_port); .... .... .... $jsonData = array("Name" =&gt; $sensor-&gt;getName(), "Value" =&gt; $sensor-&gt;getValue(), "Tipology" =&gt; $sensor-&gt;getTipology(), "Timestamp" =&gt; $sensor-&gt;getTimestamp()); echo json_encode($jsonData); } </code></pre> <p>Then i have an Ajax Request to that script</p> <pre><code>$(document).ready(function () { $.ajax({ type: "POST", url: "../serverScript.php", dataType:'json', success: function (response, textStatus, xhr) { response["Name"] = response["Name"].replace(/\s/g, ''); divId = $('#' + response["Name"]); if (!divId.length){ $('#serverResult').append('' + '&lt;div class="col-sm-4 shadow-lg p-3 mb-5 bg-white rounded one marginTop-1" id = "' + response["Name"] + '"&gt;' + '&lt;h3 class="d-flex justify-content-center"&gt;' + response["Name"] + '&lt;/h3&gt;' + '&lt;/div&gt;' ); } $("#"+response["Name"]).append(response["Tipology"] + " " + response["Value"] + " " + response["Timestamp"]); }, error: function (xhr, ajaxOptions, thrownError) { console.warn(xhr.responseText); alert(xhr.status); alert(thrownError); } }); }); </code></pre> <p>Sorry for the bad code, both Ajax Request and Php script are going to be way better, i just need to make things works first!</p> <p>My Problem is:</p> <p>The Ajax Request works perfectly when i remove the while from the server code and do just one iteration of the cycle. The problem is that i would like to have an Ajax Request for every message recieved from the server. So, basically, i need a way to use the Ajax Request inside the while loop. Anyway to do that?</p> <p>Thanks!</p> </div>

如何在无限循环中定位第5和第9个元素?

<div class="post-text" itemprop="text"> <p>I working on a WP blog integration into Magento. I have a custom blog post page with infinite loop. I have infinite number of rows, in each row there is 3 posts. I want to replace 5th's and 9th's post place with highlight featured product from the Magento catalogue item. </p> <p>This is the mockup which I want to implement. Currently it's displaying infinite loop of posts. </p> <p><img src="https://i.stack.imgur.com/bZy3M.png" alt="Mockup"></p> <p>Here is basic <strong>loop</strong>: Can anyone suggest what is the better practice to target 5th and 9th element and suggest how to improve the loop. </p> <p>Additionally, if someone know how I can display Magento's product item in that place, it would be amazing. </p> <pre><code>&lt;div class="loop"&gt; &lt;?php while ( have_posts() ) : the_post(); ?&gt; &lt;?php get_template_part( 'content', $post-&gt;post_type ); ?&gt; &lt;?php endwhile; ?&gt; &lt;?php skeleton_content_nav( 'nav-below' ); ?&gt; &lt;/div&gt;&lt;!-- .loop --&gt; </code></pre> <p>Thank you in advance!</p> </div>

Laravel:循环遍历数组并将其转换为修改后的数组,其中包含一个键中的原始数组

<div class="post-text" itemprop="text"> <p>I have a data array that contains food items and looks like this. </p> <pre><code>[ { "itemId": 80001, "name": "FRENCH FRIES SMALL", "description": "More delicious than ever, our signature piping hot, thick cut Salted French Fries are golden on the outside and fluffy on the inside.", "price": 6, "slug": "french-fries-small-80001" }, { "itemId": 80002, "name": "FRENCH FRIES MEDIUM", "description": "More delicious than ever, our signature piping hot, thick cut Salted French Fries are golden on the outside and fluffy on the inside.", "price": 7, "slug": "french-fries-medium-80002" }, { "itemId": 80003, "name": "FRENCH FRIES LARGE", "description": "More delicious than ever, our signature piping hot, thick cut Salted French Fries are golden on the outside and fluffy on the inside.", "price": 8, "slug": "french-fries-large-80003" }, { "itemId": 80052, "name": "CRINCKLE WEDGES SMALL", "description": "CRINCKLE WEDGES SMALL", "price": 7, "slug": "crinckle-wedges-small-80052", "sequence": 14 }, { "itemId": 80053, "name": "CRINCKLE WEDGES MEDIUM", "description": "CRINCKLE WEDGES MEDIUM", "price": 8, "slug": "crinckle-wedges-medium-80053", "sequence": 15 }, { "itemId": 80054, "name": "CRINCKLE WEDGES LARGE", "description": "CRINCKLE WEDGES LARGE", "price": 9, "slug": "crinckle-wedges-large-80054", "sequence": 16 }, ] </code></pre> <p>Now I have to loop through that array and if the name has either SMALL, MEDIUM, or LARGE I have to reformat the data so that it should look something like this e.g.</p> <pre><code>{ "itemId": 80001, "name": "FRENCH FRIES", "description": "More delicious than ever, our signature piping hot, thick cut Salted French Fries are golden on the outside and fluffy on the inside.", "itemModifiers": [ { "itemId": 80001, "name": "FRENCH FRIES SMALL", "description": "More delicious than ever, our signature piping hot, thick cut Salted French Fries are golden on the outside and fluffy on the inside.", "price": 6, "slug": "french-fries-small-80001" }, { "itemId": 80002, "name": "FRENCH FRIES MEDIUM", "description": "More delicious than ever, our signature piping hot, thick cut Salted French Fries are golden on the outside and fluffy on the inside.", "price": 7, "slug": "french-fries-medium-80002" }, { "itemId": 80003, "name": "FRENCH FRIES LARGE", "description": "More delicious than ever, our signature piping hot, thick cut Salted French Fries are golden on the outside and fluffy on the inside.", "price": 8, "slug": "french-fries-large-80003" } ], "slug": "french-fries-80001", "sequence": 8 } </code></pre> <p>The legacy system of the client was designed poorly and they are requiring an api that properly formats the data into a more granularized format. I was trying to figure out as to how do this. Please take note that the original array has more items than my example and I should loop through each one of them. Should I rebuild the data from scratch? Or is there a better way of doing this while looping through the array?</p> </div>

在jsp中用rs.next()循环打印数据库的数据后,怎么重头再打印一遍呢?

``` <table border=1 bordercolorlight=#000000> <tr> <td width=40>数量</td> <td>账户名</td> </tr> <% while(rs.next()){ out.println("<tr><td>"+rs.getString(1)+"</td>"); out.println("<td>"+rs.getString(2)+"</td>"); out.println("<tr>"); } %> </table> ``` 楼主这样打印了一个列表,但是还需要在本页面中再打印一个相同数据的列表,但是貌似rs.next()不能回到初始位置,我应该怎么做呢?

关于百张表union问题,求sql大神

![图片说明](https://img-ask.csdn.net/upload/201604/16/1460774361_132432.png)需求展示是这样的,根据一家企业的唯一id![图片说明](https://img-ask.csdn.net/upload/201604/16/1460774396_495669.png)去遍历这个excel所有的表,一开始还算好做的,三个sheet分开union就行了,用java程序去评了一个sql![图片说明](https://img-ask.csdn.net/upload/201604/16/1460774438_835457.png),后面需求变成把联系人和电话放在一起,但是联系人的sheet和联系方式的excel并不是一一对应的,![![图片说明](https://img-ask.csdn.net/upload/201604/16/1460774494_271315.jpg)图片说明](https://img-ask.csdn.net/upload/201604/16/1460774486_154110.png),而且可能一个表里有多个联系人,而联系方式少于联系人的,这样数据又不能精确配对了。。'现在有没有什么办法不用手动去union,用类似我上面弄个脚本自动生成的方式

wxpython 显示动态数字的问题

我在做一个linux监控的小程序,server端可以获取远程 cpu 内存等信息,并每秒钟通过socket把这些数据以字典的形式发给客户端,当server端监听到client链接后就开始主动发数据,客户端这边我想用 wxpython作一个界面把不断接收到的动态数字显示出来,我应该用什么方法。 当mainloop()函数执行后面板才能显示出来,这时候我怎么往面板上传数据呢?我用socket接收到的数据怎么和面板结合呢? 客户端开始运行应该是运行显示界面的文件吧,客户端的socket什么时候运行呢?它是有个while循环的 这样才能不断接收到server端发来的信息。应该把连server端的代码放在什么位置?谁会给我个思路用什么方法,函数等 import socket HOST = *127.0.0.1* PORT = 12345 BUFSIZ = 2048 ADDR = (HOST,PORT) monitorClient = socket.socket(socket.AF_INET, socket.SOCK_STREAM) monitorClient.connect(ADDR) while True: monitorClient.send(*online...*) data = monitorClient.recv(BUFSIZ) if not data: pass print data 这是客户端的socket,现在只是把接收到的数据打印

jsp页面遍历list集合?

jsp页面如何遍历struts2的action传过来的list集合,并显示?

关于jsp用session传递list 在另一页面获取并遍历输出list

如题 ``` List<shuxing> list = new ArrayList<shuxing>(); shuxing s=new shuxing(); while(rs.next()){ s.setsShopName(rs.getString("sShopName")); s.setiNumbHj(rs.getString("iNumbHj")); s.setrMoneyHj(rs.getString("rMoneyHj")); list.add(s); } session.setAttribute("rs",list); response.sendRedirect("dian.jsp"); conn.close(); 获取 <c:forEach items="rs" var="user" > <c:out value="${user.sShopName}"/> </c:forEach> ``` 这样写报错HTTP Status 500 - type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception org.apache.jasper.JasperException: An exception occurred processing JSP page /dian.jsp at line 55 52: <!-- Codrops top bar --><!--/ Codrops top bar --> 53: <!-- <td><%Object q=session.getAttribute("rs"); %><%=q %></td>--> 54: <c:forEach items="rs" var="user" > 55: <c:out value="${user.sShopName}"/> 56: 57: </c:forEach> 58: </div> Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:524) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:435) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

MySQL存图片路径,在JSP显示图片的代码怎么写?

用的是MySQL8和elipse, 想在连接数据库的基础上, 把数据库里img这个里面存的图片路径运用到JSP的<img>标签上, 目前img里存的是image/malatang.jpg , image是当前项目的图片夹, 完全小白自学中,希望大家能给出详细的修改的代码,谢谢大家! ``` <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="com.mysql.jdbc.Driver" %> <%@ page import="java.sql.*" %> <html> <head> <title>通过JSP打开数据表</title> </head> <body> <% Class.forName("com.mysql.cj.jdbc.Driver"); System.out.println("驱动程序加载成功..."); String url = "jdbc:mysql://localhost:3306/test1?useSSL=false&serverTimezone=Asia/Shanghai"; String user = "root"; String password = "1122"; String tableName="test1"; Connection conn = DriverManager.getConnection(url, user, password); out.print("数据库连接成功!"); out.print("<br />"); String imgpath = "SELECT img FROM foodstest;"; request.getContextPath(); Statement stmt = null; stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(imgpath); out.print("查询结果:"); while (rs.next()) { out.println(rs.getString("img")); //将查询结果输出 } %> <br/> <img src="<%=?>" alt="images"/> ``` ```

mfc调用mysql数据库时,如何在listbox上逐行显示调用的数据库的表中的内容呢?

RT。 已经成功实现了在控件上按一下鼠标就能调用指定的数据库。 但是对于调用的数据库中的特定的表如何在listbox上逐行显示还是不知道怎么做。。。 其实已经查了博客园和CSDN等等了,但是没有讲的很清楚的。 唯一一个博客园给了代码,按照他的方法调试了下发现没声明两个变量(不知道啥意思啊) 博客园提供的代码经过我改进后如下,如果有人能看懂,希望能指出问题: (不知道ItemName和nCount分别代表什么,没有声明啊) ``` void CthirdstepDlg::OnBnClickedRealresearch() //按钮button的函数 { // TODO: 在此添加控件通知处理程序代码 //初始化数据库对象 pConn = mysql_init(NULL); //localhost:服务器地址,可以直接填入IP;root:账号; //123:密码;test:数据库名;3306:网络端口 if (!mysql_real_connect(pConn, "localhost", "root", "wtk123", "jeesite", 3306, NULL, 0)) { AfxMessageBox(_T("数据库连接失败!")); return; } else//连接成功则继续访问数据库,之后的相关操作代码基本是放在这里面的 { AfxMessageBox(_T("数据库连接成功!")); UpdateData(true); //设置数据库字符格式,解决中文乱码问题 mysql_query(pConn, "set names 'gb2312'"); int t; // 执行 sql 语句 char research_query[200]={0}; CString choose_name; m_researchname.GetWindowText(choose_name); //获取输入静态文本框的字符串 strcpy(research_query,select_head); strcat(research_query,"zd_resourse"); strcat(research_query," where name like '%"); strcat(research_query,choose_name); strcat(research_query,"%'"); strcat(research_query,""); t = mysql_query(pConn,research_query); res = mysql_store_result(pConn); while (res!=NULL) { if (NULL!=(row=mysql_fetch_row(res))) { if (row[0]!=NULL) { ItemName[nCount++]=row[0];//不知道ItemName和nCount分别代表什么,没有声明啊 m_Filelist.AddString(row[0]); } } else { break; } } // while(row = mysql_fetch_row(res)) // { // printf("%s %s\n",row[1],row[2]); // } mysql_free_result(res); mysql_close(pConn); } } UpdateData(false); mysql_close(pConn);//关闭Mysql连接 } ``` 我的大致思路就是先创建一个空表,然后用for循环从i=0开始,逐行调用AddString函数来显示,然而具体怎么操作就不知道了——希望懂的人能贴一下代码,感激不尽!!!

python从入门到实践中的《外星人入侵》游戏,外星人移动出问题

我按照书上的代码编写,已经生成多行多列的外星人飞船,静止没问题,但是让飞船动起来的时候,却变成了只有一列飞船在移动,其他的都消失了,这是为什么呢?求指点。。。 图片如下: ![图片说明](https://img-ask.csdn.net/upload/201811/01/1541061266_597866.png) ![图片说明](https://img-ask.csdn.net/upload/201811/01/1541061280_149064.png) 代码如下: 主循环: while True: # 监视键盘和鼠标事件 gf.check_events(ai_settings, screen, ship, bullets) ship.update() gf.update_bullets(bullets) gf.update_aliens(ai_settings, aliens) # 每次循环都重绘屏幕,最近绘制的屏幕展示 gf.update_screen(ai_settings, screen, ship, bullets, aliens) 更新函数 def update_aliens(ai_settings, aliens): '''更新所有外星人''' check_fleet_edges(ai_settings, aliens) aliens.update() def check_fleet_edges(ai_settings, aliens): for alien in aliens.sprites(): if alien.check_edge(): change_fleet_direction(ai_settings , aliens) break def change_fleet_direction(ai_settings, aliens): for alien in aliens.sprites(): alien.rect.y += ai_settings.fleet_drop_speed ai_settings.fleet_direction *= -1 def update_screen(ai_settings, screen, ship, bullets, aliens): # 更新屏幕上的图像,并切换到新屏幕 screen.fill(ai_settings.bg_color) ship.blitme() testnum = 0 # 在飞船和外星人后面重绘所有子弹 for bullet in bullets.sprites(): bullet.draw_bullet() # 让最新绘制的屏幕可见 print ("外星人数量= " + str(len(aliens))) for alien in aliens.sprites(): alien.blitme() testnum += 1 print("绘制外星人" + str(testnum)) pygame.display.flip() 外星人类 class Alien(Sprite): def __init__(self, ai_settings, screen): super().__init__() self.screen = screen self.ai_settings = ai_settings self.screen_rect = self.screen.get_rect() self.image = pygame.image.load('image/alien.png') self.image = pygame.transform.scale(self.image, (40,40)) self.rect = self.image.get_rect() self.rect.x = self.rect.width self.rect.y = self.rect.height self.x = float(self.rect.x) self.edge_station = 1 print("alien init 完成") def blitme(self): self.screen.blit(self.image, self.rect) print('alien draw 完成') def check_edge(self): screen_rect = self.screen.get_rect() if self.rect.right >= screen_rect.right: return True elif self.rect.left <= 0: return True def update(self): ''' if self.rect.right >= self.screen_rect.right: self.edge_station = -1 self.rect.y += self.rect.height elif self.rect.left < self.screen_rect.left: self.edge_station = 1 self.rect.y += self.rect.height ''' self.x += (self.ai_settings.alien_speed_factor * self.ai_settings.fleet_direction) self.rect.x = self.x

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

Intellij IDEA 实用插件安利

1. 前言从2020 年 JVM 生态报告解读 可以看出Intellij IDEA 目前已经稳坐 Java IDE 头把交椅。而且统计得出付费用户已经超过了八成(国外统计)。IDEA 的...

搜狗输入法也在挑战国人的智商!

故事总是一个接着一个到来...上周写完《鲁大师已经彻底沦为一款垃圾流氓软件!》这篇文章之后,鲁大师的市场工作人员就找到了我,希望把这篇文章删除掉。经过一番沟通我先把这篇文章从公号中删除了...

总结了 150 余个神奇网站,你不来瞅瞅吗?

原博客再更新,可能就没了,之后将持续更新本篇博客。

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

魂迁光刻,梦绕芯片,中芯国际终获ASML大型光刻机

据羊城晚报报道,近日中芯国际从荷兰进口的一台大型光刻机,顺利通过深圳出口加工区场站两道闸口进入厂区,中芯国际发表公告称该光刻机并非此前盛传的EUV光刻机,主要用于企业复工复产后的生产线扩容。 我们知道EUV主要用于7nm及以下制程的芯片制造,光刻机作为集成电路制造中最关键的设备,对芯片制作工艺有着决定性的影响,被誉为“超精密制造技术皇冠上的明珠”,根据之前中芯国际的公报,目...

优雅的替换if-else语句

场景 日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段: 优先判断条件,条件不满足的,逻辑及时中断返回; 采用策略模式+工厂模式; 结合注解,锦...

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

2020阿里全球数学大赛:3万名高手、4道题、2天2夜未交卷

阿里巴巴全球数学竞赛( Alibaba Global Mathematics Competition)由马云发起,由中国科学技术协会、阿里巴巴基金会、阿里巴巴达摩院共同举办。大赛不设报名门槛,全世界爱好数学的人都可参与,不论是否出身数学专业、是否投身数学研究。 2020年阿里巴巴达摩院邀请北京大学、剑桥大学、浙江大学等高校的顶尖数学教师组建了出题组。中科院院士、美国艺术与科学院院士、北京国际数学...

为什么你不想学习?只想玩?人是如何一步一步废掉的

不知道是不是只有我这样子,还是你们也有过类似的经历。 上学的时候总有很多光辉历史,学年名列前茅,或者单科目大佬,但是虽然慢慢地长大了,你开始懈怠了,开始废掉了。。。 什么?你说不知道具体的情况是怎么样的? 我来告诉你: 你常常潜意识里或者心理觉得,自己真正的生活或者奋斗还没有开始。总是幻想着自己还拥有大把时间,还有无限的可能,自己还能逆风翻盘,只不是自己还没开始罢了,自己以后肯定会变得特别厉害...

百度工程师,获利10万,判刑3年!

所有一夜暴富的方法都写在刑法中,但总有人心存侥幸。这些年互联网犯罪高发,一些工程师高技术犯罪更是引发关注。这两天,一个百度运维工程师的案例传遍朋友圈。1...

程序员为什么千万不要瞎努力?

本文作者用对比非常鲜明的两个开发团队的故事,讲解了敏捷开发之道 —— 如果你的团队缺乏统一标准的环境,那么即使勤劳努力,不仅会极其耗时而且成果甚微,使用...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发(16k)

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

无代码时代来临,程序员如何保住饭碗?

编程语言层出不穷,从最初的机器语言到如今2500种以上的高级语言,程序员们大呼“学到头秃”。程序员一边面临编程语言不断推陈出新,一边面临由于许多代码已存在,程序员编写新应用程序时存在重复“搬砖”的现象。 无代码/低代码编程应运而生。无代码/低代码是一种创建应用的方法,它可以让开发者使用最少的编码知识来快速开发应用程序。开发者通过图形界面中,可视化建模来组装和配置应用程序。这样一来,开发者直...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

《Oracle Java SE编程自学与面试指南》最佳学习路线图2020年最新版(进大厂必备)

正确选择比瞎努力更重要!

字节跳动面试官竟然问了我JDBC?

轻松等回家通知

面试官:你连SSO都不懂,就别来面试了

大厂竟然要考我SSO,卧槽。

实时更新:计算机编程语言排行榜—TIOBE世界编程语言排行榜(2020年6月份最新版)

内容导航: 1、TIOBE排行榜 2、总榜(2020年6月份) 3、本月前三名 3.1、C 3.2、Java 3.3、Python 4、学习路线图 5、参考地址 1、TIOBE排行榜 TIOBE排行榜是根据全世界互联网上有经验的程序员、课程和第三方厂商的数量,并使用搜索引擎(如Google、Bing、Yahoo!)以及Wikipedia、Amazon、YouTube统计出排名数据。

立即提问
相关内容推荐