对于Python 2.7专家(或发烧友)来说,这个问题无疑是一块蛋糕,所以在这里.
如何创建一个整数列表,其值的重复性与它的原始值相似?
a = list([0, 0, 1, 1, 2, 2, 3, 3, 4, 4])
Run Code Online (Sandbox Code Playgroud)
这样做真的很容易:
for i in range(10): a.append(int(i / 2))
Run Code Online (Sandbox Code Playgroud)
但我宁愿在一个简单的行中开始a = 期望的输出.
感谢您抽出宝贵时间回答.
PS.没有任何" 可能已经有你的答案的问题是我正在寻找的.
我已经提出了使用Python的加密例程,我很感激任何人都可以看一下.我正在寻找一些信息; 之前是否使用过此方法/变体,如果是这样,它的名称是什么?它有多安全?
我们的想法是通过互联网传输数据,并使用双方都知道的两个密码进行加密.
它使用SHA1哈希对密码进行编码,然后使用哈希中的字符创建偏移查找表.将偏移值添加到普通字符以生成加密字符.它使用一对一方法而不是压缩或添加数据.
字符串'Hello StackOverflow'生成'wPjOew6AdoNOYgjf7y'如果两个SHA1哈希是使用'burger'和'meat'生成的.
这是整个代码,对于超长字典数组抱歉:S
代码运行使用:win32上的Python 2.7.2(默认,2011年6月12日,15:08:59)[MSC v.1500 32位(英特尔)]
import sys
# burger
sha1_pass1 = '7a86b15480e0a870f0b07a4d23a54ef8f9acac44'
# meat
sha1_pass2 = 'bb40f75a9c6038e0da200fc5c3a6f371c1592c66'
# Characters available to encrypt (can be extended)
valid_chars = '0123456789 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,!?' * 2
offset = {'00':0,
'01':1,
'02':2,
'03':3,
'04':4,
'05':5,
'06':6,
'07':7,
'08':8,
'09':9,
'0a':10,
'0b':11,
'0c':12,
'0d':13,
'0e':14,
'0f':15,
'10':16,
'11':17,
'12':18,
'13':19,
'14':20,
'15':21,
'16':22,
'17':23,
'18':24,
'19':25,
'1a':26,
'1b':27,
'1c':28,
'1d':29,
'1e':30,
'1f':31,
'20':32,
'21':33,
'22':34,
'23':35,
'24':36,
'25':37,
'26':38,
'27':39,
'28':40, …Run Code Online (Sandbox Code Playgroud) 我希望能够创建这样的东西:
int points = 250;
public class point {
float x, y;
}
point[] p = new point[points];
// constructor
public JavaMain() {
Random r = new Random();
for (int i = 0; i < points; i++) {
int tx = r.nextInt(640) + 1;
int ty = r.nextInt(480) + 1;
p[i].x = (float)tx;
p[i].y = (float)ty;
}
}
Run Code Online (Sandbox Code Playgroud)
问题是,这会NullPointerException在尝试为p[i].x或分配值时抛出一个p[i].y
这是我在Java上的第一天,并通过Google和StackOverflow进行了一些研究,但没有发现任何可以解决问题的核心问题.