File: files.html

package info (click to toggle)
python-visual 1%3A5.12-1.6
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, stretch
  • size: 7,708 kB
  • ctags: 7,635
  • sloc: cpp: 15,593; sh: 9,615; ansic: 6,631; python: 4,737; makefile: 384
file content (167 lines) | stat: -rw-r--r-- 9,088 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/visual/Templates/template.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- InstanceBeginEditable name="doctitle" -->
<title>files</title>
<!-- InstanceEndEditable -->
<!-- InstanceBeginEditable name="head" -->
<link href="VisualRef.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.style1 {font-size: x-large}
.style2 {font-size: xx-large}
-->
</style>
<!-- InstanceEndEditable -->
<script type="text/javascript">
<!--
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}
//-->
</script>
<link href="VisualRef.css" rel="stylesheet" type="text/css" />
</head>

<body>
<table width="800" border="0" cellpadding="0" cellspacing="0">
  <!--DWLayoutDefaultTable-->
  <tr>
    <td width="10" valign="top" bgcolor="#FFFFFF"><!--DWLayoutEmptyCell-->&nbsp;</td>
    <td width="10" height="272" valign="top" bgcolor="#DDDDDD"><p>&nbsp;</p>    </td>
    <td width="173" valign="top" bgcolor="#DDDDDD"><p class="Normal"><a href="index.html">Home</a></p>
      <p class="Normal">If you're new to Python <br />
      and VPython: <a href="VisualIntro.html">Introduction</a></p>
      <p class="Normal">A VPython <a href="VPython_Intro.pdf" target="_blank">tutorial</a></p>
      <p class="Normal"><a href="primitives.html">Pictures</a> of 3D objects</p>
      <p class="Normal">Choose a 3D object:</p>
        <select name="jumpMenu4" id="jumpMenu4" onchange="MM_jumpMenu('parent',this,0)">
          <option>Choose an object</option>
          <option value="cylinder.html">Overview</option>
          <option value="arrow.html">arrow</option>
          <option value="box.html">box</option>
          <option value="cone.html">cone</option>
          <option value="convex.html">convex</option>
          <option value="curve.html">curve</option>
          <option value="cylinder.html">cylinder</option>
          <option value="ellipsoid.html">ellipsoid</option>
          <option value="faces.html">faces</option>
          <option value="frame.html">frame</option>
          <option value="helix.html">helix</option>
          <option value="label.html">label</option>
          <option value="lights.html">lights</option>
          <option value="points.html">points</option>
          <option value="pyramid.html">pyramid</option>
          <option value="ring.html">ring</option>
          <option value="sphere.html">sphere</option>
        </select>
        
      <p class="Normal">Work with 3D objects:</p>
        <select name="jumpMenu4" id="jumpMenu5" onchange="MM_jumpMenu('parent',this,0)">
          <option>Choose an option</option>
          <option value="color.html">Color &amp; Opacity</option>
          <option value="lights.html">Lighting</option>
          <option value="materials.html">Materials &amp; Textures</option>
          <option value="defaults.html">Defaults</option>
          <option value="rate.html">Animation Speed</option>
          <option value="rotation.html">Rotations</option>
          <option value="options.html">Additional Options</option>
          <option value="delete.html">Delete an Object</option>
          <option value="float.html">3/4 = 0?</option>
        </select>
        
      <p class="Normal">Windows, Events, &amp; Files:</p>
        <select name="jumpMenu4" id="jumpMenu6" onchange="MM_jumpMenu('parent',this,0)">
          <option>Choose a topic</option>
          <option value="display.html">Windows</option>
          <option value="lights.html">Lighting</option>
          <option value="mouse.html">Mouse Events</option>
          <option value="mouse_click.html">&nbsp;&nbsp;&nbsp;Mouse Click</option>
          <option value="mouse_drag.html">&nbsp;&nbsp;&nbsp;Mouse Drag</option>
          <option value="keyboard.html">Keyboard Events</option>
          <option value="controls.html">Buttons and Sliders</option>
          <option value="files.html">Reading/Writing Files</option>
        </select>
        
      <p class="Normal"><a href="vector.html">Vector operations </a></p>
      <p class="Normal"><a href="graph.html">Graphs</a></p>
    <p class="Normal"><a href="factorial.html">factorial/combin</a></p>
    <p class="Normal">What's new in <a href="new_features.html">Visual 5</a></p>
    <p class="Normal"><a href="http://vpython.org" target="_blank">VPython web site</a><br />
      <a href="license.txt" target="_blank">Visual license</a><br />
      <a href="http://www.python.org" target="_blank">Python web site</a> <br />
      <a href="http://www.python.org/doc/2.5.2/lib/module-math.html" target="_blank">Math module</a> (sqrt etc.)<br />
    <a href="http://www.scipy.org/Documentation" target="_blank">Numpy module</a> (arrays)    </p></td>
    <td width="21" valign="top" bgcolor="#FFFFFF"><!--DWLayoutEmptyCell-->&nbsp;</td>
    <td width="586" rowspan="2" valign="top"><!-- InstanceBeginEditable name="content" -->
      <table width="100%" border="1">
        <tr>
          <td width="76%" height="213"><div align="center"><span class="style1 style2"><font color="#0000A0">Reading
          and Writing Files</font></span></div></td>
          <td width="24%"><img src="images/filedialog.jpg" alt="file dialog" width="213" height="206" /></td>
        </tr>
      </table>
      <div></div>
      <div>
        <p class="Normal">A simple file dialog package is provided in the module
          <strong>visual.filedialog</strong>. </p>
        <p class="Normal">Here is how to get a file dialog display to choose
          a file to read, and then display the contents. The get_file() routine
          lets you choose a file, and it returns a file descriptor, a pointer
          to the chosen file (here the file descriptor has been named fd). If
          you cancel the file dialog display, get_file() returns None, which
          you should check for (the statements just after the &quot;if fd:&quot; will be
          executed only if fd is not None). Using the file descriptor you can
          read the entire file as one long string, or with readlines() you can
          read a list of lines of text, each ending with an end-of-line character
          ('\n').</p>
      <p class="program">from visual.filedialog import get_file<br />
  fd = get_file()<br />
  if fd:<br />
  &nbsp;&nbsp;&nbsp;&nbsp;data = fd.read() # or fd.readlines()<br />
&nbsp;&nbsp;&nbsp;&nbsp;fd.close() # close the file (we're through with it)<br />
    &nbsp;&nbsp;&nbsp;&nbsp;print data<br />
      </p>

      <p class="Normal">To choose a file and write data to the chosen file, do
        this:</p>
      <p class="program">from visual.filedialog import save_file<br />
        fd = save_file()<br />
          if fd:<br />
  &nbsp;&nbsp;&nbsp;&nbsp;fd.write(&quot;This is a test.\nThis is only a test.&quot;)<br />
  &nbsp;&nbsp;&nbsp;&nbsp;fd.close() # close the file (we're through with it)<br />
      </p>
        <p class="Normal">There are other file descriptor functions besides read(),
          readlines(), write(), and close(); see Python documentation. For example,
          fd.name() is the name of the file associated with the file descriptor.</p>
      <p class="Normal">The examples shown above are sufficient for many tasks,
          but you can customize the file dialog display by specifying parameters
          for the get_file() and save_file() functions, as shown here with their
          default values:</p>
        <p class="program">save_file(file_extensions=None, x=100, y=100,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;          title=&quot;Save&quot;,
        mode='w', maxfiles=20)</p>
        <p class="program">get_file(file_extensions=None, x=100, y=100,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;          title=&quot;Open&quot;,
        mode='rU', maxfiles=20)</p>
        <p class="Normal">For example, <strong>get_file(file_extensions=['.txt.',
          '.py'])</strong>          will display only files ending in these extensions.
          The parameter <strong>maxfiles</strong> specifies the maximum number
          of files to show on one page, which determines the height of the
          file dialog display. The default &quot;universal&quot; file reading mode is 'rU'
          which converts different kinds of end-of-line
          markers for Windows, Mac, and Linux files to the same standard character
          '\n'. The parameters x and y specify the pixel location of the upper
          left corner of the file dialog display, measured from the upper left
          corner of the computer screen. The title is displayed at the top of
          the window.</p>
    <!-- InstanceEndEditable --></td>
  </tr>
  <tr>
    <td height="16" colspan="4"></td>
  </tr>
</table>
</body>
<!-- InstanceEnd --></html>