cloudpss 4.5.20__tar.gz → 4.5.22__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. {cloudpss-4.5.20 → cloudpss-4.5.22}/PKG-INFO +1 -1
  2. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/TemplateCompiler.py +2 -1
  3. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/model/model.py +29 -5
  4. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/model/topology.py +7 -1
  5. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/utils/graphqlUtil.py +3 -1
  6. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/utils/httprequests.py +2 -2
  7. cloudpss-4.5.22/cloudpss/version.py +1 -0
  8. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss.egg-info/PKG-INFO +1 -1
  9. cloudpss-4.5.22/test/test-topology1.py +37 -0
  10. cloudpss-4.5.22/test/testb.py +16 -0
  11. cloudpss-4.5.20/cloudpss/version.py +0 -1
  12. cloudpss-4.5.20/test/test-topology1.py +0 -31
  13. cloudpss-4.5.20/test/testb.py +0 -18
  14. {cloudpss-4.5.20 → cloudpss-4.5.22}/README.md +0 -0
  15. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/__init__.py +0 -0
  16. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/__init__.py +0 -0
  17. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/job/__init__.py +0 -0
  18. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/job/job.py +0 -0
  19. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/job/messageStreamReceiver.py +0 -0
  20. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/job/messageStreamSender.py +0 -0
  21. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/model/__init__.py +0 -0
  22. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/model/model.py +0 -0
  23. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/model/revision.py +0 -0
  24. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/model/topology.py +0 -0
  25. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/utils/AsyncIterable.py +0 -0
  26. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/utils/__init__.py +0 -0
  27. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/asyncio/utils/httpAsyncRequest.py +0 -0
  28. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/dslab/__init__.py +0 -0
  29. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/dslab/dataManageModel.py +0 -0
  30. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/dslab/dslab.py +0 -0
  31. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/dslab/files/__init__.py +0 -0
  32. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/dslab/files/curveData.py +0 -0
  33. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/dslab/files/files.py +0 -0
  34. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/dslab/financialAnalysisModel.py +0 -0
  35. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/function/__init__.py +0 -0
  36. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/function/function.py +0 -0
  37. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/function/functionExecution.py +0 -0
  38. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/function/job.py +0 -0
  39. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/ieslab/DataManageModel.py +0 -0
  40. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/ieslab/EvaluationModel.py +0 -0
  41. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/ieslab/IESLabOpt.py +0 -0
  42. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/ieslab/IESLabPlan.py +0 -0
  43. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/ieslab/IESLabSimulation.py +0 -0
  44. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/ieslab/PlanModel.py +0 -0
  45. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/ieslab/__init__.py +0 -0
  46. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/TemplateManager.py +0 -0
  47. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/__init__.py +0 -0
  48. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/job.py +0 -0
  49. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/jobReceiver.py +0 -0
  50. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/messageStreamReceiver.py +0 -0
  51. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/messageStreamSender.py +0 -0
  52. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/result/EMTResult.py +0 -0
  53. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/result/IESLabSimulationResult.py +0 -0
  54. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/result/IESLabTypicalDayResult.py +0 -0
  55. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/result/IESResult.py +0 -0
  56. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/result/PowerFlowResult.py +0 -0
  57. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/result/__init__.py +0 -0
  58. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/job/result/result.py +0 -0
  59. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/model/__init__.py +0 -0
  60. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/model/implements/__init__.py +0 -0
  61. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/model/implements/component.py +0 -0
  62. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/model/implements/diagram.py +0 -0
  63. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/model/implements/implement.py +0 -0
  64. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/model/jobDefinitions.py +0 -0
  65. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/model/revision.py +0 -0
  66. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/project/__init__.py +0 -0
  67. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/project/project.py +0 -0
  68. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/DSLabResult.py +0 -0
  69. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/IESLabEvaluationResult.py +0 -0
  70. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/IESLabPlanResult.py +0 -0
  71. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/IESLabTypicalDayResult.py +0 -0
  72. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/MessageStreamReceiver.py +0 -0
  73. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/__init__.py +0 -0
  74. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/receiver.py +0 -0
  75. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/result.py +0 -0
  76. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/runner.py +0 -0
  77. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/storage.py +0 -0
  78. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/runner/transform.py +0 -0
  79. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/utils/IO.py +0 -0
  80. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/utils/__init__.py +0 -0
  81. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/utils/dataEncoder.py +0 -0
  82. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/utils/matlab.py +0 -0
  83. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/utils/parseDebugArgs.py +0 -0
  84. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/utils/yamlLoader.py +0 -0
  85. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss/verify.py +0 -0
  86. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss.egg-info/SOURCES.txt +0 -0
  87. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss.egg-info/dependency_links.txt +0 -0
  88. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss.egg-info/requires.txt +0 -0
  89. {cloudpss-4.5.20 → cloudpss-4.5.22}/cloudpss.egg-info/top_level.txt +0 -0
  90. {cloudpss-4.5.20 → cloudpss-4.5.22}/setup.cfg +0 -0
  91. {cloudpss-4.5.20 → cloudpss-4.5.22}/setup.py +0 -0
  92. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test-async.py +0 -0
  93. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test-async2.py +0 -0
  94. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test-async3.py +0 -0
  95. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test-plot.py +0 -0
  96. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test-plot1.py +0 -0
  97. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test-sdk.py +0 -0
  98. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test-sdk1.py +0 -0
  99. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test-snapshot.py +0 -0
  100. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test-topology.py +0 -0
  101. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test-yield.py +0 -0
  102. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test.py +0 -0
  103. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test11.py +0 -0
  104. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test12.py +0 -0
  105. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test2.py +0 -0
  106. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test7950.py +0 -0
  107. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/testAsync.py +0 -0
  108. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/testEvent.py +0 -0
  109. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/testRt-test.py +0 -0
  110. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/testRt.py +0 -0
  111. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/testRt2.py +0 -0
  112. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/testSend.py +0 -0
  113. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test_TCP.py +0 -0
  114. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test_in_new_web_1.py +0 -0
  115. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test_modepower_ampratio(3).py +0 -0
  116. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test_ws.py +0 -0
  117. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test_ws2.py +0 -0
  118. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/test_ws3.py +0 -0
  119. {cloudpss-4.5.20 → cloudpss-4.5.22}/test/testkey.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudpss
3
- Version: 4.5.20
3
+ Version: 4.5.22
4
4
  Summary: cloudpss sdk
5
5
  Home-page: https://www.cloudpss.net
6
6
  Author: cloudpss
@@ -1,6 +1,7 @@
1
1
  import json
2
2
  from collections import namedtuple
3
3
  from typing import Any, Dict, List, Union
4
+ import copy
4
5
 
5
6
  PARSER_STATUS_TEXT = 0
6
7
  PARSER_STATUS_EXPRESSION_SIMPLE = 1
@@ -239,7 +240,7 @@ class TemplateCompiler:
239
240
  def template(templates,options={}):
240
241
  def compile_template(expression, type):
241
242
  if type == 'formula':
242
- return f'context[{json.dumps(expression)}]'
243
+ return f'copy.deepcopy(context[{json.dumps(expression)}])'
243
244
  elif type == 'interpolation':
244
245
  return f"context[{json.dumps(expression)}] ?? ''"
245
246
  raise ValueError(f'Unsupported type: {type}')
@@ -487,6 +487,20 @@ class Model(object):
487
487
 
488
488
  revision = ModelRevision.create(model.revision, model.revision.hash)
489
489
 
490
+ # 使用默认权限对象,但如果model的permissions字段中有相关权限值就使用model中的数值
491
+ default_permissions = {
492
+ "moderator": 98367,
493
+ "member": 65551,
494
+ "everyone": 0
495
+ }
496
+
497
+ # 如果model有permissions字段,则合并权限值
498
+ model_permissions = getattr(model, 'permissions', {})
499
+ if isinstance(model_permissions, dict):
500
+ permissions = {**default_permissions, **model_permissions}
501
+ else:
502
+ permissions = default_permissions
503
+
490
504
  return graphql_request(
491
505
  Model.__create_model,
492
506
  {
@@ -499,11 +513,7 @@ class Model(object):
499
513
  "name": model.name,
500
514
  "description": model.description,
501
515
  "tags": model.tags,
502
- "permissions": {
503
- "moderator": 98367,
504
- "member": 65551,
505
- "everyone": 0
506
- },
516
+ "permissions": permissions,
507
517
  }
508
518
  },
509
519
  **kwargs
@@ -543,6 +553,20 @@ class Model(object):
543
553
  if xVersion==3:
544
554
  tags=model.tags
545
555
 
556
+ # 使用默认权限对象,但如果model的permissions字段中有相关权限值就使用model中的数值
557
+ default_permissions = {
558
+ "moderator": 98367,
559
+ "member": 65551,
560
+ "everyone": 0
561
+ }
562
+
563
+ # 如果model有permissions字段,则合并权限值
564
+ model_permissions = getattr(model, 'permissions', {})
565
+ if isinstance(model_permissions, dict):
566
+ permissions = {**default_permissions, **model_permissions}
567
+ else:
568
+ permissions = default_permissions
569
+
546
570
  r= graphql_request(
547
571
  Model.__update_model, {
548
572
  'a': {
@@ -56,7 +56,7 @@ class ModelTopology():
56
56
  f.close()
57
57
 
58
58
  @staticmethod
59
- def fetch(hash, implementType, config, maximumDepth=None, **kwargs):
59
+ def fetch(hash, implementType, config, maximumDepth=None,topology=None, **kwargs):
60
60
  """
61
61
  获取拓扑
62
62
 
@@ -86,6 +86,12 @@ class ModelTopology():
86
86
  ports
87
87
  """
88
88
  del kwargs['ports']
89
+
90
+ if topology is not None:
91
+ if not isinstance(topology, ModelTopology):
92
+ raise TypeError("topology must be an instance of ModelTopology")
93
+ variables['a']['topology'] = topology.toJSON()
94
+
89
95
  query = ModelTopology.__modelTopologyQuery + ModelTopology.__ReqParam + "}}"
90
96
 
91
97
 
@@ -1,11 +1,13 @@
1
1
  # coding=UTF-8
2
2
  import json
3
3
  from cloudpss.utils import request
4
+ from cloudpss.utils.IO import IO
4
5
 
5
6
 
6
7
  def graphql_request(query, variables=None, baseUrl=None,token=None,**kwargs):
7
8
  payload = {'query': query, 'variables': variables}
8
9
 
9
- r = request('POST', 'graphql', data=json.dumps(payload),baseUrl=baseUrl,token=token, **kwargs)
10
+
11
+ r = request('POST', 'graphql', data=IO.serialize(payload,'json'),baseUrl=baseUrl,token=token, **kwargs)
10
12
 
11
13
  return json.loads(r.text)
@@ -18,8 +18,8 @@ def request(method, uri, baseUrl=None, params={}, token=None, **kwargs):
18
18
  if token:
19
19
  headers = {
20
20
  'Authorization': 'Bearer ' + token,
21
- 'Content-Type': 'application/json; charset=utf-8',
22
- "User-Agent": "cloudpss-sdk-python/" + __version__
21
+ 'Content-Type': 'application/json+gzip; charset=utf-8',
22
+ "User-Agent": "cloudpss-sdk-python/" + __version__
23
23
  }
24
24
  else:
25
25
  raise Exception('token undefined')
@@ -0,0 +1 @@
1
+ __version__ = '4.5.22'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudpss
3
- Version: 4.5.20
3
+ Version: 4.5.22
4
4
  Summary: cloudpss sdk
5
5
  Home-page: https://www.cloudpss.net
6
6
  Author: cloudpss
@@ -0,0 +1,37 @@
1
+
2
+ import time
3
+ import sys
4
+ import os
5
+
6
+ sys.path.append(os.path.join(os.path.dirname(__file__), '..\\'))
7
+ import cloudpss
8
+ import time
9
+ import json
10
+
11
+ if __name__ == '__main__':
12
+ os.environ['CLOUDPSS_API_URL'] = 'http://10.101.10.45/'
13
+ print('CLOUDPSS connected')
14
+ cloudpss.setToken(
15
+ 'eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwidXNlcm5hbWUiOiJhZG1pbiIsInNjb3BlcyI6WyJtb2RlbDo5ODM2NyIsImZ1bmN0aW9uOjk4MzY3IiwiYXBwbGljYXRpb246MzI4MzEiXSwicm9sZXMiOlsiYWRtaW4iXSwidHlwZSI6ImFwcGx5IiwiZXhwIjoxNzY2MzA3MzU1LCJub3RlIjoiYWEiLCJpYXQiOjE3NTA3NTUzNTV9.iYh3otDGy-f7dKyIUd8xpnEuwVuRDfmBVsI112XeCZBe7sZLdyBb6a4XqOd8AoyTzFcpLj7rF1PQcT4mhEf6kA')
16
+ print('Token done')
17
+ project = cloudpss.Model.fetch('model/admin/xx11')
18
+ # topology = cloudpss.ModelTopology.fetch("-xrS3SewFhpVYKBtIXLk-XDLCQRQnUmlIbXS3s4sdPUkPKeAMhXHjRgZD1JPjPfQ","emtp",{'args':{}})
19
+ topology= project.fetchTopology(config={'args':{}},maximumDepth=50)
20
+ print(topology.components)
21
+
22
+
23
+ topology.dump(topology,'testTopology.json',indent=2)
24
+
25
+
26
+ # topology2 = cloudpss.ModelTopology.fetch('', 'emtp', {'args': {}}, maximumDepth=5, topology=topology)
27
+
28
+
29
+ # print(topology2.components)
30
+ # topology2.dump(topology2,'testTopology2.json',indent=2)
31
+
32
+
33
+ # topology3= project.fetchTopology(config={'args':{}},maximumDepth=5)
34
+ # print(topology3.components)
35
+
36
+
37
+ # topology3.dump(topology3,'testTopology3.json',indent=2)
@@ -0,0 +1,16 @@
1
+ import os,sys
2
+ import time
3
+
4
+ import socketio
5
+ import threading
6
+ import struct
7
+ Uninitialized = type("Uninitialized", (), {})()
8
+
9
+ def pp():
10
+ x=b=c=q=x=t=Uninitialized
11
+ print(x,b,c,q,x,t)
12
+
13
+ if __name__ == '__main__':
14
+ pp()
15
+
16
+
@@ -1 +0,0 @@
1
- __version__ = '4.5.20'
@@ -1,31 +0,0 @@
1
-
2
- import time
3
- import sys
4
- import os
5
-
6
- sys.path.append(os.path.join(os.path.dirname(__file__), '..\\'))
7
- import cloudpss
8
- import time
9
- import numpy as np
10
- import pandas as pd
11
- import json
12
-
13
- if __name__ == '__main__':
14
- os.environ['CLOUDPSS_API_URL'] = 'http://10.101.10.45/'
15
- print('CLOUDPSS connected')
16
- cloudpss.setToken(
17
- 'eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwidXNlcm5hbWUiOiJhZG1pbiIsInNjb3BlcyI6WyJtb2RlbDo5ODMzNSIsImZ1bmN0aW9uOjk4MzM1IiwiYXBwbGljYXRpb246OTgzMzUiXSwicm9sZXMiOlsiYWRtaW4iXSwidHlwZSI6ImFwcGx5IiwiZXhwIjoxNzI0NTU3MDIzLCJub3RlIjoiYSIsImlhdCI6MTY5MzQ1MzAyM30._Xuyo62ESKLcIAFeNdnfBM44yPiiXli9OPKvXDzL2rPV4J1_qsGZP--bsS1tXAVy-x8ooUIIAAG1yhwmZuk7-Q')
18
- print('Token done')
19
- project = cloudpss.Model.fetch('model/admin/asdfsadd')
20
- # topology = cloudpss.ModelTopology.fetch("-xrS3SewFhpVYKBtIXLk-XDLCQRQnUmlIbXS3s4sdPUkPKeAMhXHjRgZD1JPjPfQ","emtp",{'args':{}})
21
- topology= project.fetchTopology(config={'args':{}},maximumDepth=50)
22
- print(topology.components)
23
- # topology.dump(topology,'test.json')
24
-
25
-
26
- # # topology= project.fetchTopology(config={'args':{}})
27
-
28
- # topology.dump(topology,'test.json')
29
-
30
-
31
-
@@ -1,18 +0,0 @@
1
- import os,sys
2
- import time
3
-
4
- import socketio
5
- import threading
6
- import struct
7
-
8
-
9
- if __name__ == '__main__':
10
- a = [1.21,2.22,3.33]
11
- x = struct.pack('d'*len(a),*a)
12
- print(x)
13
- print(len(x))
14
-
15
- t = struct.unpack('d'*int(len(x)/8),x)
16
-
17
-
18
- print(t)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes