如何解决在终端中写pip时出现语法错误
我正在使用Python 2.6.6。一切正常,直到我写完
FIVEH
然后终端说:
automaticQS
我尝试通过以下方式安装SciPy:
testall
但是现在我得到了:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdbool.h>
#include <assert.h>
#ifndef ORIG1
#define ORIG1 1
#endif
#ifndef ORIG2
#define ORIG2 1
#endif
#ifndef ORIG3
#define ORIG3 0
#endif
#ifndef ORIG4
#define ORIG4 0
#endif
#ifndef ORIG5
#define ORIG5 0
#endif
#if 0
#define CINQUECENTO 500
#define MILLE 1000
#define DUEMILA 2000
#define CINQUEMILA 5000
#define DIECIMILA 10000
#define VENTIMILA 20000
#define CINQUANTAMILA 50000
#else
int testlen[] = {
500,1000,2000,5000,10000,20000,50000,-1
};
#endif
typedef enum { ORINATO,INVERS,PARZ_ORDINATO,RANDOM } Ordine;
#if 0
typedef enum { FIVEH,ONET,TWOT,FIVET,TENT,TWENTYT,FIFTYT } Dimensione;
#endif
int qconfronti = 0,qscambi = 0;
int *generaArray(int dimensione,Ordine ordine);
int perno(int *array,int primo,int ultimo);
void quickSort(int *array,int u,int v);
void calculateQuicktime(int *array,int dim);
void automaticQS();
#ifdef DEBUG
#define dbgprt(_lvl,_fmt...) \
do { \
if (opt_d >= _lvl) \
printf(_fmt); \
} while (0)
#else
#define dbgprt(_fmt...) \
do { \
} while (0)
#endif
int opt_d;
int svlvl;
void
dbgpush(int newlvl)
{
svlvl = opt_d;
if (opt_d)
opt_d = newlvl;
}
void
dbgpop(void)
{
opt_d = svlvl;
}
int
main(int argc,char **argv)
{
--argc;
++argv;
for (; argc > 0; --argc,++argv) {
char *cp = *argv;
if (*cp != '-')
break;
cp += 2;
switch (cp[-1]) {
case 'd':
opt_d = (*cp != 0) ? atoi(cp) : 1;
break;
}
}
setlinebuf(stdout);
automaticQS();
return 0;
}
int *
generaArray(int dimensione,Ordine ordine)
{
int i,j,n;
int *array = malloc(dimensione * sizeof(int));
if (array == NULL)
return NULL;
dbgprt(1,"generaArray: %d\n",dimensione);
switch (ordine) {
case ORINATO:
for (i = 0; i < dimensione; i++) {
array[i] = i;
}
break;
case INVERS:
n = 0;
for (i = dimensione - 1; i >= 0; i--) {
array[i] = n;
n++;
}
break;
case PARZ_ORDINATO:
for (i = 0; i < dimensione / 2; i++) {
array[i] = i;
}
for (j = i + 1; j < dimensione; j++) {
n = rand();
array[j] = n;
}
printf("\n");
break;
case RANDOM:
for (i = 0; i <= dimensione; i++)
array[i] = rand();
break;
#if 0
case ESCI:
break;
#endif
default:
break;
}
return array;
}
int
perno(int *array,int ultimo)
{
#if ORIG3
int i = primo;
#else
int i = primo - 1;
#endif
int j = ultimo + 1;
int supp = 0;
int pivot = array[primo];
dbgprt(1,"perno: ENTER primo=%d ultimo=%d pivot=%d\n",primo,ultimo,pivot);
while (i < j) {
dbgprt(2,"perno: OUTLOOP i=%d j=%d\n",i,j);
do {
i = i + 1;
#if (! ORIG1)
if (i >= j)
break;
#endif
dbgprt(3,"perno: ILOOP i=%d array=%d\n",array[i]);
qconfronti++;
#if ORIG5
} while (array[i] <= pivot);
#else
} while (array[i] < pivot);
#endif
do {
#if (! ORIG1)
if (i >= j)
break;
#endif
j = j - 1;
dbgprt(3,"perno: JLOOP j=%d array=%d\n",array[j]);
qconfronti++;
} while (array[j] > pivot);
if (i < j) {
dbgprt(2,"perno: SWAP\n");
supp = array[i];
array[i] = array[j];
array[j] = supp;
qscambi++;
}
}
supp = array[primo];
array[primo] = array[j];
array[j] = supp;
qscambi++;
dbgprt(1,"perno: EXIT j=%d\n",j);
return j;
}
void
quickSort(int *array,int v)
{
int q = 0;
dbgprt(1,"quickSort: ENTER u=%d v=%d\n",u,v);
#if ORIG2
if (u == v) {
#else
if ((v - u) < 2) {
#endif
dbgprt(1,"quickSort: EXIT\n");
return;
}
q = perno(array,v);
if (u < q) {
assert((q - 1) != v);
#if ORIG4
quickSort(array,q - 1);
#else
quickSort(array,q);
#endif
}
if (q < v) {
assert((q + 1) != u);
quickSort(array,q + 1,v);
}
dbgprt(1,"quickSort: EXIT\n");
}
void
calculateQuicktime(int *array,int dim)
{
clock_t start,end;
double t;
qconfronti = 0;
qscambi = 0;
start = clock();
quickSort(array,dim - 1);
end = clock();
t = ((double) (end - start)) / CLOCKS_PER_SEC;
printf("Confronti: %d \t Scambi: %d\n",qconfronti,qscambi);
printf("Tempo impiegato per %d elementi : %lf secondi\n",dim,t);
// check array to ensure it's sorted
int err = 0;
int old = array[0];
for (int idx = 1; idx < dim; ++idx) {
int cur = array[idx];
if (cur < old) {
printf("calculateQuicktime: BADSORT idx=%d old=%d cur=%d\n",idx,old,cur);
err = 1;
}
old = cur;
}
if (err)
exit(1);
// NOTE/BUG: array is never freed (i.e. a memory leak)
#if 1
free(array);
#endif
}
void
testall(Ordine order,const char *reason)
{
printf("\n\n%s:\n",reason);
for (int *len = testlen; *len >= 0; ++len) {
printf("\n");
int *arr = generaArray(*len,order);
calculateQuicktime(arr,*len);
}
}
void
automaticQS()
{
printf("\nQuick Sort");
testall(ORINATO,"Ordinati");
testall(PARZ_ORDINATO,"Parzialmente ordinati");
testall(INVERS,"Inversamente ordinati");
testall(RANDOM,"Casuali");
}
有没有解决问题的建议?
解决方法
尝试
easy_install-2.6 --upgrade 'setuptools<37' 'pip<10'
如果不起作用,请从https://bootstrap.pypa.io/2.6/get-pip.py安装pip
:
curl https://bootstrap.pypa.io/2.6/get-pip.py -o get-pip.py # or wget -O
python2.6 get-pip.py
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。