JAVASCRIPT
JAVASCRIPT
JavaScript介绍
JavaScript是运行在浏览器端的脚本语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互,JavaScript是浏览器解释执行的,前端脚本语言还是Jscript(微软,ID独有),ActionScript(Adoble公司,需要插件)等
前端三大块
HTML:页面结构
CSS:页面表现:元素大小,颜色,位置,隐藏或显示,部分动画效果
JavaScript:页面行为:部分动画效果,页面与用户的交互,页面功能
JavaScript嵌入页面的方式
行间事件(主要用于事件)
< input type= "button" name= "" οnclick= " alert ( 'ok!' ); " value= " 点击我!" >
页面script标签嵌入(内嵌JS)
< script type= "text/javascript" > alert("ok!”); script >
外部引入
< script type= "text/javascript" src= "js/hello.js" > script >
变量
JavaScript是一种弱类型语言,JavaScript的变量类型由它的值来决定的,定义变量需要用关键字var
Var isNum = 123;
Var sTr = ”asdf”
//同时定义多个变量可以使用“,”隔开,公用一个“var”关键字
Var isNum = 45,sTr=”hello world”,sCount=’68’;
变量类型:
5种年基本数据类型:
number 数字类型
string 字符串类型
boolean 布尔类型 true或false
undefined undefined类型,变量声明没有初始化,它的值就是undefined
null null类型,表示空对象,如果定义的变量将来准备保存对象,可以将变量初始化为null,在页面生获取不到对象,返回值就是null
1种复合类型
Object
Javascript语句与注释
一条JavaScript语句应该以“;”结尾
JavaScript注释
单行注释: //
多行注释: /* */
变量、函数、属性、函数参数命名规范:
区分大小写
第一个字符必须是字母,下划线(_)或者美元符号($)
其他字符可以是字母,下划线,美元符号或数字
匈牙利命名风格:
对象o Object 比如:oDiv
数组 a Array 比如:altems
字符串s String 比如:sUserName
整数i Integer 比如:iItemCount
布尔值 b Boolean 比如:bIsComlpete
浮点数 f Float 比如:fPrice
函数 fn Function 比如:fnHandler
正则表达式 re RegExp 比如:reEmailCheck
获取元素方法一
可以使用内置对象document上的getElementById方法来获取页面上设置id属性的元素,获取的是一个html对象,然后将它赋值给一个变量,比如:
< script type= "text/javascript" > var odi = document . getElementById ( "div1" ) script >
上面的语句,如果把JavaScript写在元素的上面,就会报错,因为页面上从上往下加载执行的,JavaScript去页面上获取元素div1的时候,元素div1还没有加载,解决方法有2种:
第一种方法:将JavaScript放到页面最下边
..........
这是第一个div元素
.......
< script type= "text/javascript" > var odi = document . getElementById ( "div1" ) script >
第二种方法:将JavaScript语句放到window.onload触发的函数里面,获取元素的语句会在页面加载完成后才执行,就不会出错了。
< script type= "text/javascript" >
window.onload = function(){ var odi = document . getElementById ( "div1" )
} script >
.......
操作元素属性
获取的页面元素,就可以对页面元素的属性进行操作,属性的操作包括属性的读和写
操作属性的方法
“.”操作
“[]”操作
属性写法
html 的属性和js里面属性写法一样
“class”属性写成“className”
“style” 属性里面的属性,有横杆的改写驼峰式,比如:“font-size”,改写成“style.fontSize”
通过“.”操作属性
< script type= "text/javascript" >
window . onload = function (){
// 通过ID名获取元素赋值给oDiv变量
var oDiv = document . getElementById ( "div1" )
var oa = document . getElementById ( "link" )
// 读取属性
var sId = oDiv . id
alert ( sId )
// 改变元素的属性(写属性)
oDiv . style . color = "red"
oDiv . style . fontSize = "20px"
oa . href = "http://www.baidu.com"
oa . title = " 这是跳转到百度的网址"
var oa2 = document . getElementById ( "div2" )
oa2 . className = "box2"
}
通过“[]”操作属性
< script type= "text/javascript" >
window . onload = function (){
// 通过ID名获取元素赋值给oDiv变量
var oDiv = document . getElementById ( "div1" )
var sMystyle = "color"
var sValue = "red"
/* 属性用变量来替代的话需要用【】来操作 */
oDiv . style [ sMystyle ] = sValue
}
script >
innerHTML
innerHTML 可以读取或者写入标签包裹的内容
< script type= "text/javascript" >
window . onload = function (){
// 通过ID名获取元素赋值给oDiv变量
var oDiv = document . getElementById ( "div1" )
// 读取元素里面的内容
var text = oDiv . innerHTML ;
alert ( text )
// 改写元素里面的内容
//oDiv.innerHTML = "修改一个元素"
oDiv . innerHTML = " 传智播客"
}
script >
< body >
< div id= "div1" > 这是一个元素 div >
body >
函数
函数就是重复执行的代码片。
< head >
< meta charset= "UTF-8" >
< title > JS 函数 title >
< script type= "text/javascript" >
function fnMyalert (){
alert ( "hello world !" )
}
function fnChange (){
var oDiv = document . getElementById ( "div1" )
oDiv . style . color = "red"
oDiv . style . fontSize = "20px"
}
script >
head >
< body >
< div id= "div1" οnclick= " fnMyalert () " > 这是一个div元素 div >
< input type= "button" name= "" value= " 改变div" οnclick= " fnChange () " >
body >
< head >
< meta charset= "UTF-8" >
< title > JS 函数 title >
< script type= "text/javascript" >
function fnMyalert (){
alert ( "hello world !" )
}
function fnChange (){
var oDiv = document . getElementById ( "div1" )
oDiv . style . color = "red"
oDiv . style . fontSize = "20px"
}
script >
head >
< body >
< div id= "div1" οnclick= " fnMyalert () " > 这是一个div元素 div >
< input type= "button" name= "" value= " 改变div" οnclick= " fnChange () " >
body >
匿名函数
定义函数可以不给名称,这个叫做匿名函数,可以将匿名函数直接赋值给元素绑定的事件来完成匿名函数的调用。
< head >
< meta charset= "UTF-8" >
< title > JS 函数 title >
< script type= "text/javascript" >
window . onload = function (){
var oBtn = document . getElementById ( "btn01" );
oBtn .onclick = function (){
var oDiv = document . getElementById ( "div1" )
oDiv . style . color = "red"
oDiv . style . fontSize = "20px"
};
}
script >
head >
< body >
< div id= "div1" > 这是一个div元素 div >
< input id = "btn01" type= "button" name= "" value= " 改变div" >
body >
变量与函数预解析
JavaScript 解析过程分为两个阶段,先是编译阶段,然后执行阶段,在编译阶段将会function定义的函数提前,并且将var定义的变量声明提前,将它赋值undefined.
< script type= "text/javascript" >
// 预解析会把变量的声明提前
alert ( iNum ); // 弹出undefined
alert (iNum01); // 系统会崩溃或出错,因为iNum01没有定义,也没有声明
var iNum = 12 ;
script >
< script type= "text/javascript" >
// 预解析会让函数的声明和定义提前,正常用它
myalert ();
function myalert (){
alert ( "hello world!" );
}
script >
函数传参
< script type= "text/javascript" >
function fnMyalert (a){
alert (a);
}
fnMyalert ( "hello world!" )
fnMyalert ( 12 )
script >
< script type= "text/javascript" >
window . onload = function (){
function fnChangestyle (myStyle,val){
var oDiv = document . getElementById ( "div01" )
oDiv . style [myStyle] = val;
}
fnChangestyle ( 'fontSize' , '30px' );
fnChangestyle ( 'color' , 'red' );
fnChangestyle ( 'backgroundColor' , 'pink' );
}
script >
函数return关键字
函数中‘return’关键字的作用
返回函数执行的结果
结束函数的运行
阻止默认行为
< script type= "text/javascript" >
function fnAdd (a,b){
var c = a + b
return c ;
}
var isResult = fnAdd ( 2 , 5 );
alert ( isResult )
script >
条件语句
通过条件来控制程序的走向,就需要用到条件语句
运算符
算术运算符:+(加),-(减),*(乘),/(除),%(求余)
赋值运算: =,+=,-=,*=,/=,%=,++(自增1)
条件运算符:==,===(先比较两边的类型,然后在比较值),>,>=,<,<=,!=,&&(而且),||(或者),!(否)
If else
< script type= "text/javascript" >
var iNum01 = 2 ;
var sNum01 = '2' ;
if ( iNum01 === sNum01 ){
alert ( " 相等" );
} else {
alert ( " 不相等" );
}
if ( 3 != 4 ){
alert ( "true" );
} else {
alert ( "false" );
}
if (! 4 > 3 ){
alert ( " 大于" );
} else {
alert ( " 非大于" );
}
if ( 4 > 3 && 5 > 2 ){
alert ( " 满足" );
} else {
alert ( " 不满足" );
}
if ( 4 > 3 || 5 < 2 ){
alert ( " 部分满足" );
} else {
alert ( " 全部不满足" );
}
script >
Switch语句
多重if else语句可以换成性能更高的switch语句
< head >
< meta charset= "UTF-8" >
< title > 网页换肤 title >
< link id = "link01" type= "text/css" rel= "stylesheet" href= "css/skin01.css" >
< script type= "text/javascript" >
window . onload = function (){
var iWeek = 3 ;
var oBody = document . getElementById ( 'body01' );
switch ( iWeek ){
case 1 :
oBody . style . backgroundColor = 'gold' ;
break ;
case 2 :
oBody . style . backgroundColor = 'pink' ;
break ;
case 3 :
oBody . style . backgroundColor = 'green' ;
break ;
case 4 :
oBody . style . backgroundColor = 'yellowgreen' ;
break ;
case 5 :
oBody . style . backgroundColor = 'lightblue' ;
break ;
case 6 :
oBody . style . backgroundColor = 'lightgreen' ;
break ;
default :
break ;
}
}
script >
head >
< body id= "body01" >
body >
数组及操作方法
数组就是一组数据的集合,JavaScript中,数组里面的数据可以是不同类型的。
定义数组的方法
< script type= "text/javascript" >
// 对象的实例创建
var aList01 = new Array( 1 , 2 , 3 , 4 );
// 直接创建(通常使用这个方法来创建数组)
var aList02 = [ 1 , 2 , 3 , 4 , 5 ];
script >
操作数组中数据的方法
获取数组的长度:aList.length;
< script type= "text/javascript" >
var aList02 = [ 1 , 2 , 3 , 4 , 5 ];
// 通过 length 来 获取数组的长度
alert ( aList02 . length );
script >
用下标操作数组的某个数量:aList[0];
Join()将数组成员通过一个分隔符合并成字符串
< script type= "text/javascript" >
var aList02 = [ 1 , 2 , 3 , 4 , 5 ];
var sTr = aList02.join(“-”);
alert(sTr);// 弹出1-2-3-4-5
Push()和pop()从数组最后增加成员或删除成员
< script type= "text/javascript" >
var aList02 = [ 1 , 2 , 3 , 4 , 5 ];
//Push() 和pop()从数组最后增加成员或删除成员
aList02 . push ( 'b' );
alert ( aList02 );
aList02 . pop ()
alert ( aList02 );
script >
Unshift()和shift()从数组前面增加成员或删除成员
< script type= "text/javascript" >
var aList02 = [ 1 , 2 , 3 , 4 , 5 ];
aList02 . unshift ( 'b' )
alert ( aList02 )
aList02 . shift ()
alert ( aList02 );
script >
reverse()将数组反转
< script type= "text/javascript" >
var aList02 = [ 1 , 2 , 3 , 4 , 5 ];
aList02 . reserve ()
alert ( aList02 );
script >
indexof()返回数组中元素第一次出现的索引值
< script type= "text/javascript" >
var aList03 =[ 'a' , 'b' , 'c' , 'a' , 'b' , 'c' ]
alert ( aList03 . indexOf ( 'b' ))
script >
splice()在数组中增加或删除成员
第一个参数是开始的位置,第二个参数是从起始位置删除多少个成员,第三个之后(包括第三个)的是要增加的成员的值
< script type= "text/javascript" >
var aList03 =[ 'a' , 'b' , 'c' , 'd' , 'a' , 'b' , 'c' ];
// aList03.splice(1,0,'e') ;// 从第2个开始不删除,在1的位置增加一个e
// alert(aList03);//'a','e','b','c','d','a','b','c'
aList03 . splice ( 1 , 2 , 'f' , 'g' ); // 从第2个开始删除b,c,在1的位置增加一个f,g
alert ( aList03 ); // a,f,g,d,a,b,c
script >
多维数组
多维数组指的是数组的成员也是数组的数组
< script type= "text/javascript" >
var aList = [[ 1 , 2 , 3 ],[ 'a' , 'b' , 'c' , 'd' ],[ 4 , 5 , 6 ],[ 6 , 7 , 8 ]];
alert ( aList . length ) //4
alert ( aList [ 0 ]. length ) //3
alert ( aList [ 0 ][ 1 ]); //2
script >
循环
批量操作数组中的数据,需要使用到循环语句
循环语句
程序中进行有规律的重复性操作,需要使用到循环语句
For 循环
< script type= "text/javascript" >
for ( var i = 0 ; i i ++){
.....
}
script >
< script type= "text/javascript" >
var aList =[ 1 , 2 , 3 , 4 , 5 , 6 ];
var iLen = aList . length ;
for ( var i = 0 ; i < iLen ; i ++){
alert ( aList [ i ]);
}
script >
While 循环
< script type= "text/javascript" >
var i =0;
While(i<0){
i++;
}
script >
数组去重
< script type= "text/javascript" > var aList = [ 1 , 2 , 3 , 2 , 3 , 4 , 6 , 7 , 8 , 5 , 9 , 3 , 2 , 1 , 8 , 5 , 4 , 5 , 6 ]; var aList2 =[]; for ( var i = 0 ; i < aList . length ; i ++){ if ( aList . indexOf ( aList [ i ])== i ){ aList2 . push ( aList [ i ]); } } alert ( aList2 ); script
获取元素方法二
可以使用内置对象document上的getElementByTagName方法来获取页面上的某一标签,获取的是一个选择集,不是数组,但可以用下标的方式操作选择集里面的标签元素
< script type= "text/javascript" > window . onload = function (){ // 通过标签名称获取li元素,生成一个选择集,赋值给aLi /* var aLi = document.getElementsByTagName("li"); var iLen = aLi.length; //读取选择集内元素的个数 //alert(aLi.length); //同时给所有的li加背景色 for(var i=0;i //设置背景色 aLi[i].style.background = "gold"; }*/ //给指定li加背景色 var oUl = document . getElementById ( "list1" ); var aList = oUl . getElementsByTagName ( "li" ); var iLen = aList . length alert ( aList . length ) for ( var i = 0 ; i < iLen ; i ++) { if ( i % 2 == 0 ){ aList [ i ]. style . background = "gold" ; } } } script >
Javascript组成
ECMAscript JavaScript的语法(变量,函数,循环语句等语法)
DOM文档对象模型 操作html和css的方法
BOM浏览器对象模型 操作浏览器的一些方法
字符串处理方法:
字符串合并操作:“+”
ParseInt()将数字字符串转化为整数
ParseFloat()将数字字符串转为小数
Split()把一个字符串分割成字符串组成的数组
ChartAt()获取字符串中的某一个字符
Indexof()查找字符串是否含有某字符
Substring()截取字符串用法:substring(start,end)(不包括end)
toUpperCase()字符串转大写
toLowerCase()字符串转小写
< script type= "text/javascript" > var iNum01 = 12 ; var sTr = "abc" ; var iNum02 = "34" ; // 数字和字符串相加 等同于字符串拼接 alert ( iNum01 + iNum02 ); // 弹出1234 alert ( iNum02 + sTr ); // 弹出34abc var sTr = '12.35' ; // 将数字字符串转化为整数 alert ( parseInt ( sTr )); // 弹出12 //将数字字符串转化为小数 alert ( parseFloat ( sTr )); // 弹出12.35 //把一个字符串分割成字符串组成的数组 var sTr = "2017-4-22" ; var aList = sTr . split ( "-" ); alert ( aList ); // 弹出['2017','4','22'] var aList02 = sTr . split ( "" ); alert ( aList02 ); // 弹出['2','0','1','7','-','4','-','2','2'] //获取字符串中的某一个字符 var sTr04 = "#div" ; var sTr05 = sTr04 . charAt ( 0 ); alert ( sTr05 ); // 弹出# //查找字符串是否含有某字符,indemxOf(),如果不存在的话就会弹出-1,找到的话就会弹出对应的索引值 var sTr06 = "abcdf microsoft asdf1" ; alert ( sTr06 . indexOf ( 'microsoft' )); // 弹出 6,弹出-1 //截取字符串用法 var sTr07 = "abcdf123456gh" ; var sTr08 = sTr07 . substring ( 5 , 11 ); alert ( sTr08 ); //// 弹出 123456 script >
用最快的方式实现字符串反转
< script >
var sTr09 = "abcdfmicrosoft12345asdf1" var sTr10 = sTr09 . split ( "" ). reverse (). join (); alert ( sTr10 ); // 弹出1,f,d,s,a,5,4,3,2,1,t,f,o,s,o,r,c,i,m,f,d,c,b,a script >
定时器
制作动画
异步操作
函数缓冲与节流
定时器类型及语法
定时器有2种:
setTimeout 只执行一次的定时器
setInterval 反复执行的定时器
clearTimeout 关闭只执行一次的定时器
clearInterval 关闭反复执行的定时器
变量作用域
变量作用域指的是变量的作用域范围,JavaScript中的变量分为全局变量和局部变量
全局变量:在函数之外定义的变量,为整个项目页面共用,函数内部外部都可以访问有
局部变量:在函数内部定义变量,只能在定义该变量的函数内部访问,外部无法访问。
封闭函数
封闭函数是JavaScript中匿名函数的另外一种写法,创建一个开始就执行而比用命名的函数。
一般定义函数和执行函数
Function myAlert(){
Alert(“hello world!”);
}
myAlert()
封闭函数:
(function myAlert(){
Alert(“hello world!”);
} )();
还可以在函数定义前加上“~”和“!”等符号来定义匿名函数
!function myAlert(){
Alert(“hello world!”);
}
在封闭函数前加一个“;”,可以避免JS压缩时候出错 ;(function myalert(){ alert("hello world!") })();
常用内置对象
document
< script type= "text/javascript" >
// 通过Id获取元素
document . getElementById ()
// 通过标签获取元素
document . getElementsByTagName ()
// 获取上一个页面跳转页面的地址
document . referrer
script >
location
// 获取或重定URL地址
window . location . href
// 获取地址参数部分
window . location . search
// 获取页面锚点或者叫哈希值
window . location . hash
Math
//获取0-1的随机数,不包括1
Math.random
//向下取整
Math.floor
//向上取整
Math.ceil
< script type= "text/javascript" > var iPi = Math . PI ; alert ( iPi ); //Math.random() 只能返回从0到1之间的随机数,不包括1 var iNum = Math . random (); var aArr =[]; for ( var i = 0 ; i < 20 ; i ++){ aArr . push ( iNum ) } //alert(aArr); console . log ( aArr ); // 向下取整,去除小数部分 alert ( Math . floor ( 5.6 )); //5 // 向上取整,去除小数部分,整体加1 alert ( Math . ceil ( 5.2 )); //6 //10-20 之间的随机数 var iN01 = 10 ; var iN02 = 20 ; var aList02 =[]; for ( var i = 0 ; i < 40 ; i ++){ var iNum = Math . floor (( iN02 - iN01 )* Math . random ()+ 1 ) + iN01 ; aList02 . push ( iNum ); } console . log ( aList02 ); script >
调试程序的方法
alert :直接弹出框给你看你想要看的变量
console.log:在console里面看得到你想要的变量值
document.title
你可能感兴趣的:(Python,前端)
推特关键词爬虫Python实现最新版(2025.2.20)
才华是浅浅的耐心
爬虫 python 开发语言
引言随着各类自媒体平台的兴起,数据挖掘和分析变得尤为重要。推特作为全球最大的自媒体平台,越来越来越多的人需要通过爬取其内容进行分析。然后自从马斯克接手推特之后,推特api不可再用,推特的反爬力度也在逐渐增强。今天小编就分享一个推特爬虫的教程。描述这篇文章主要通过关键词爬取帖子内容信息以及帖子作者主页相关信息,用户也可根据自己需要的时间段进行筛选。推特可支持筛选多种语言,我这里先展示中文和英文的。字
现代前端开发框架对比:React、Vue 和 Svelte 的选择指南
zhyoobo
vue.js react.js 前端
引言在当今快速发展的Web开发领域,前端框架的选择往往直接影响项目的开发效率、维护成本和用户体验。React、Vue和Svelte作为当前最受关注的三大框架,各自拥有独特的设计哲学与技术实现。本文将通过5000字的深度解析,从架构设计、开发体验、性能特征到生态系统四个维度进行全方位对比,并针对不同场景提供选型决策框架。无论您是初创团队的技术负责人,还是正在构建企业级应用的架构师,都能在此找到面向2
基于Python拉取tiktok直播视频流,并将视频流切割成一定时长的视频片段
sh_moranliunian
蜘蛛侠 网络爬虫 后端 python 爬虫
通过访问tiktok的直播间网页,从网页的script标签内部提取出关于该直播间的相关信息的JSON串,最终从JSON里提取出直播视频流的hls地址和直播间的其他信息。importsysimportrequestsimportjsonimporttimeimportsubprocessfromurllib.parseimporturlunparsefrombs4importBeautifulSou
`fetch` 和 `axios`的前端使用区别
Studying_swz
blog 前端
欢迎访问的个人博客:https://swzbk.site/,加好友,拉你入福利群fetch和axios`是前端常用的两种HTTP客户端,以下是它们的核心区别及适用场景:一、本质区别特性fetchaxios类型浏览器原生API(部分环境需polyfill)第三方库(需通过npm/yarn安装)底层实现基于Promise基于Promise,封装了XMLHttpRequest二、核心功能对比1.请求与响
python中datetime模块
a1111111111ss
python python
参考大佬cmzsteven双手奉上大佬的网址https://blog.csdn.net/cmzsteven/article/details/64906245datetime模块中包含如下类:2、通过year,month,day三个数据描述符可以进行访问:date对象由year年份、month月份及day日期三部分构成:date(year,month,day)>>>a=datetime.date.t
如何合法抓取TikTok视频信息和评论:完整Python爬虫教程
Python爬虫项目
2025年爬虫实战项目 音视频 python 爬虫 开发语言
一、引言TikTok是全球最受欢迎的短视频平台之一,每天吸引着数百万的用户上传和分享视频内容。作为内容创作者和数据分析师,抓取TikTok上的视频和评论可以帮助你分析社交趋势、受欢迎的内容类型和用户互动。然而,TikTok明确表示其平台的数据抓取行为受到限制,这也意味着我们不能直接通过常规的网络爬虫技术去抓取其数据。本文将介绍如何在合法的前提下进行TikTok数据抓取。我们将探索TikTok的AP
谈高考真题的使用(数学)
weixin_34116110
python 测试
2019独角兽企业重金招聘Python工程师标准>>>在高三数学复习中,大家常说“以本为本,以纲为纲,高考真题当主粮”,就是以教材内容为根本,以“考试大纲”为准绳,以高考真题的训练为主线;抓住了本,把握了纲,训练有的放矢,我们的复习就会事半功倍。高考数学试题难度相对稳定,考查形式的变化却是异彩纷呈,而变化中又有着一定的规律:全国试题与各省市试题的考试要求基本一致;题型除上海和江苏外,全国和其他各省
LORA的魔法棒:在Stable Diffusion中挥洒注意力机制的优化咒语 ??
DTcode7
AI生产力 AI AIGC stable diffusion AI生产力 前沿
LORA的魔法棒:在StableDiffusion中挥洒注意力机制的优化咒语??欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。推荐:DTcode7的博客首页。一个做过前端开发的产品经理,经历过睿智产品的折磨导致脱发之后,励志要翻身农奴把歌唱,一边打入敌人内部一边持续提升自己,为我们广大开发同胞
policy_does_not_allow_file_overwrite
前端uniapp云存储
uniapp云开发阿里云上传文件uniapp的出现,让前端人员和后端人员实现了“全栈”的小梦想,当然,真正跨端开发的时候,还是会遇到不少的问题,比如今天我们的主角,uniCloud.uploadFile,一般来说,这个api文件名动态生成,云端返回文件存储的链接即可,但是,假如我们的产品是针对用户存储的,即用户的头像、私有文件、图片等具有唯一性,要单独开个目录存放的时候,同样的文件名上传会存在无法
Python之pip的安装和使用详细教程
叫我技术帝
Python python
我们都知道python有海量的第三方库或者说模块,这些库针对不同的应用,发挥不同的作用。我们在实际的项目中,或多或少的都要使用到第三方库,那么如何将他人的库加入到自己的项目中内呢?打个电话?大哥你好,想用下你那个库,麻烦给邮箱发个源码呗!显然这是个笑话。Python官方的PyPi仓库为我们提供了一个统一的代码托管仓库,所有的第三方库,甚至你自己写的开源模块,都可以发布到这里,让全世界的人分享下载。
python使用pip安装本地包-Python之pip使用详解|附第三方库安装总结
weixin_37988176
首先简单介绍下pip是什么?pip是python的第三方库管理器,可以根据所开发项目的需要,使用pip相关命令安装不同库。Pyhon3.4以后,pip都默认跟Python一块安装,pip在python安装目录中的位置如下:执行方法:运行【win+R】+cmd,执行pip,查看是否安装成功。(找不到命令,则需要手动添加到环境变量)python官方提供了一个pypi库(https://pypi.org
2024年09月中国电子学会青少年软件编程(Python)等级考试试卷(二级)答案 + 解析
伶俐角少儿编程
python 少儿编程 青少年编程等级考试 中国电子学会 青少年编程
青少年软件编程(Python)等级考试试卷(二级)分数:100题数:37点击前往在线模拟练习一、单选题(共25题,共50分)1.a=['甲','乙','丙','丁','子','丑']print(a[4])以上代码的输出是ÿ
Python pip download下载安装包到指定路径
飘~~~~
python
一、Python第三方安装包下载pipdownload-dsave_pathpackages-d:后面接下载包路径(save_path)packages:安装包名称二、Python第三方安装包安装2.1whl包python-mpipinstallxxx.whl2.2tar.gz包tar-zxvfxxx.tar.gzcdxxxpythonsetup.pybuildpythonsetup.pyinst
【免费】中国电子学会2024年03月份青少年软件编程Python等级考试试卷二级真题(含答案)
Lemon Liu
电子学会Python真题 前端 javascript microsoft python 青少年编程
2024-03Python二级真题分数:100题数:37测试时长:60min一、单选题(共25题,共50分)1.期末考试结束了,全班的语文成绩都储存在列表score中,班主任老师请小明找到全班最高分,小明准备用Python来完成,以下哪个选项,可以获取最高分呢?(B)(2分)A.min(score)B.max(score)C.score.max()D.score.min()答案解析:max()函数
中国电子学会202309青少年软件编程(Python)等级考试试卷(二级)真题
晴朗向上
python 考级 编程 开发语言 microsoft
青少年软件编程(Python)等级考试试卷(二级)分数:100题数:37一、单选题(共25题,每题2分,共50分)1、yyh = [2023, '杭州亚运会', ['拱宸桥', '玉琮''莲叶']]jxw = yyh[2][0]print(jxw[1] * 2)以上代码运行结果是?()A.宸宸B.杭杭C.玉玉D.州州2、阿宝在学习Python语言编程,他写了一个程序可以实现输入月份数字就可以输出2
2024年9月中国电子学会青少年软件编程(Python)等级考试试卷(三级)答案 + 解析
Sinsa_SI
python windows 开发语言 电子学会 等级考试
更多真题在线练习系统:历年真题在线练习系统一、单选题1、以下表达式的值为True的是?()A.all('','1','2','3')B.any([])C.bool('abc')D.divmod(6,0)正确答案:C答案解析:A和B选项,False;D选项,报错;C选项,True。2、下列代码的运行结果是?()l=list(map(float,(1,2,3,4)))print(l)A.[1,2,3,
2024年9月电子学会青少年软件编程Python等级考试(三级)真题试卷
No0d1es
青少年软件编程(Python) 等级考试试卷 python 开发语言 青少年编程 电子学会 三级
2024年9月青少年软件编程Python等级考试(三级)真题试卷选择题第1题单选题以下python表达式的值为True的是?()A.all('','1','2','3')B.any([])C.bool('abc')D.divmod(6,0)第2题单选题下列python代码的运行结果是?()l=list(map(float,(1,2,3,4)))print(l)A.[1,2,3,4]B.['1','
【mysql】mysql之主从部署以及介绍
向往风的男子
DBA mysql 数据库
本站以分享各种运维经验和运维所需要的技能为主《python零基础入门》:python零基础入门学习《python运维脚本》:python运维脚本实践《shell》:shell学习《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战《k8》从问题中去学习k8s《docker学习》暂未更新《ceph学习》ceph日常问题解决分享《日志收集》ELK+各种中间件《运维日常》
MySQL5.6主从复制最佳实践
weixin_34252090
数据库 操作系统 python
2019独角兽企业重金招聘Python工程师标准>>>MySQL5.6主从复制最佳实践MySQL5.6主从复制的配置环境操作系统:CentOS-6.6-x86_64MySQL版本:mysql-5.6.26.tar.gz主节点IP:192.168.31.57主机名:edu-mysql-01从节点IP:192.168.31.59主机名:edu-mysql-02MySQL主从复制官方文档http://d
vs code配置python_如何在vscode里的python配置好matplotlib?,vscode配置python环境教程
weixin_39564151
vs code配置python
如何在vscode里的python配置好matplotlib?,vscode配置python环境教程vscode配置python环境教程2020-09-2015:14:33人已围观VScode配置Python环境“配置任务运行程序”遇到问题我建议尝试再把bug写出来,不能因为不一样就不继续首先需要VScodePython插件。打开Python任意脚可以直接拖入。点击左下角的扩展按钮,在弹出界面选择
TikTokenizer 开源项目教程
邱纳巧Gillian
TikTokenizer开源项目教程tiktokenizerOnlineplaygroundforOpenAPItokenizers项目地址:https://gitcode.com/gh_mirrors/ti/tiktokenizer项目介绍TikTokenizer是一个基于Python的开源项目,旨在提供一个高效、灵活的文本分词工具。该项目利用先进的算法和数据结构,能够快速准确地对文本进行分词处
python类方法和类的实例化
Cachel wood
程序设计杂事 python 开发语言 mysql hive sql 机器学习 数据库
文章目录类方法实例方法类方法静态方法特殊方法私有方法Python类的实例化1.调用`__new__`方法2.调用`__init__`方法3.返回实例对象总结类方法在Python里,类的自定义方法是类中用户自行定义的函数,这些方法能够实现特定的功能,并且可以访问和操作类的属性。下面详细介绍Python类中常见的自定义方法。实例方法定义:实例方法是类中最常见的方法,它的第一个参数通常是self,代表类
python 输入一行字符串 删除其中所有大写字母后输出_Python练习题3.17删除字符
weixin_39624873
python 输入一行字符串 删除其中所有大写字母后输出
输入一个字符串str,再输入要删除字符c,大小写不区分,将字符串str中出现的所有字符c删除。输入格式:在第一行中输入一行字符在第二行输入待删除的字符输出格式:在一行中输出删除后的字符串输入样例:在这里给出一组输入。例如:beee输出样例:在这里给出相应的输出。例如:result:b代码如下:#!/usr/bin/python#-*-coding:utf-8-*-s=input().strip()
Telegram bot教程:通过BotFather设置Telegram bot的命令菜单
鲲志说
Web3相关 业界资讯 telegram bot 经验分享 笔记 twitter Telegram Bot
最近在研究Telegrambot嘛,总有些小细节可以记录了,今天就记录一个通过BotFather设置Telegrambot的命令菜单功能➡️【好看的灵魂千篇一律,有趣的鲲志一百六七!】-欢迎认识我~~作者:鲲志说(公众号、B站同名,视频号:鲲志说996)科技博主:极星会星辉大使后端研发:java、go、python、TS,前电商、现web3主理人:COC杭州开发者社区主理人、周周黑客松杭州主理人、
Python,C++开发餐饮后厨环境远程管理APP
Geeker-2025
python c++
开发一款用于**餐饮后厨环境远程管理**的App,结合Python和C++的优势,可以实现高效的后端数据处理、实时的环境监控以及用户友好的前端界面。以下是一个详细的开发方案,涵盖技术选型、功能模块、开发步骤等内容。##技术选型###后端(Python)-**编程语言**:Python-**Web框架**:Django或Flask-**数据库**:PostgreSQL或MySQL-**实时通信**:
清晰易懂的Python安装与配置教程
Tee xm
python 开发语言
初学者也能看懂的Python安装与配置教程本教程将手把手教你安装Python,并配置国内镜像源和自定义依赖包缓存位置,即使你是零基础小白,也能轻松完成!一、准备工作操作系统:Windows10/11、macOS或Linux。下载工具:浏览器(推荐Chrome或Edge)。存储空间:至少预留500MB可用空间。二、安装Python1.下载Python访问Python官网下载页面:https://ww
双均线量化策略实战指南:基于 iTick 外汇API、股票API报价源的 Python 实现
算法pythonai开发
在量化交易领域,iTick报价API凭借其强大的多市场覆盖能力,已成为专业交易员的首选数据解决方案。其外汇API支持全球主要货币对(如EURUSD、GBPUSD)的毫秒级行情推送,包含Bid/Ask深度报价和实时波动率数据;股票API则覆盖A股、港股及美股市场,提供Level-2逐笔成交和十档盘口信息。通过统一的RESTful接口,开发者可轻松获取标准化的OHLCV数据,实现外汇、股票等多资产策略
1.1PaddleTS_环境配置:一个易用的深度时序建模的Python库
pythonQA
python paddlepaddle
PaddleTS是一个易用的深度时序建模的Python库,它基于飞桨深度学习框架PaddlePaddle,专注业界领先的深度模型,旨在为领域专家和行业用户提供可扩展的时序建模能力和便捷易用的用户体验。PaddleTS的主要特性包括:设计统一数据结构,实现对多样化时序数据的表达,支持单目标与多目标变量,支持多类型协变量封装基础模型功能,如数据加载、回调设置、损失函数、训练过程控制等公共方法,帮助开发
深入解析:React中的信号组件与细粒度更新
引言在主流的前端开发框架中,无论是React、Vue还是Svelte,核心都是围绕着更高效地进行UI渲染展开的。为了实现高性能,基于DOM总是比较慢这个假设前提,其最核心的要解决的问题有两个:响应式更新细粒度更新为了将响应式更新、细粒度更新优化到极致,各种框架是八仙过海,各显神通。以最流行的React和Vue为例,首先两者均引入了VirtualDOM的概念。Vue的静态模板编译,通过编译时的静态分
蓝桥杯pythonB组备赛
暴力执码
蓝桥杯 职场和发展
P1003[NOIP2011提高组]铺地毯题目描述为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯。一共有n张地毯,编号从1到n。现在将这些地毯按照编号从小到大的顺序平行于坐标轴先后铺设,后铺的地毯覆盖在前面已经铺好的地毯之上。地毯铺设完成后,组织者想知道覆盖地面某个点的最上面的那张地毯的编号。注意:在矩形地毯边界和四个顶点上的点也算被地毯
web前段跨域nginx代理配置
刘正强
nginx cms Web
nginx代理配置可参考server部分
server {
listen 80;
server_name localhost;
spring学习笔记
caoyong
spring
一、概述
a>、核心技术 : IOC与AOP
b>、开发为什么需要面向接口而不是实现
接口降低一个组件与整个系统的藕合程度,当该组件不满足系统需求时,可以很容易的将该组件从系统中替换掉,而不会对整个系统产生大的影响
c>、面向接口编口编程的难点在于如何对接口进行初始化,(使用工厂设计模式)
Eclipse打开workspace提示工作空间不可用
0624chenhong
eclipse
做项目的时候,难免会用到整个团队的代码,或者上一任同事创建的workspace,
1.电脑切换账号后,Eclipse打开时,会提示Eclipse对应的目录锁定,无法访问,根据提示,找到对应目录,G:\eclipse\configuration\org.eclipse.osgi\.manager,其中文件.fileTableLock提示被锁定。
解决办法,删掉.fileTableLock文件,重
Javascript 面向对面写法的必要性?
一炮送你回车库
JavaScript
现在Javascript面向对象的方式来写页面很流行,什么纯javascript的mvc框架都出来了:ember
这是javascript层的mvc框架哦,不是j2ee的mvc框架
我想说的是,javascript本来就不是一门面向对象的语言,用它写出来的面向对象的程序,本身就有些别扭,很多人提到js的面向对象首先提的是:复用性。那么我请问你写的js里有多少是可以复用的,用fu
js array对象的迭代方法
换个号韩国红果果
array
1.forEach 该方法接受一个函数作为参数, 对数组中的每个元素
使用该函数 return 语句失效
function square(num) {
print(num, num * num);
}
var nums = [1,2,3,4,5,6,7,8,9,10];
nums.forEach(square);
2.every 该方法接受一个返回值为布尔类型
对Hibernate缓存机制的理解
归来朝歌
session 一级缓存 对象持久化
在hibernate中session一级缓存机制中,有这么一种情况:
问题描述:我需要new一个对象,对它的几个字段赋值,但是有一些属性并没有进行赋值,然后调用
session.save()方法,在提交事务后,会出现这样的情况:
1:在数据库中有默认属性的字段的值为空
2:既然是持久化对象,为什么在最后对象拿不到默认属性的值?
通过调试后解决方案如下:
对于问题一,如你在数据库里设置了
WebService调用错误合集
darkranger
webservice
Java.Lang.NoClassDefFoundError: Org/Apache/Commons/Discovery/Tools/DiscoverSingleton
调用接口出错,
一个简单的WebService
import org.apache.axis.client.Call;import org.apache.axis.client.Service;
首先必不可
JSP和Servlet的中文乱码处理
aijuans
Java Web
JSP和Servlet的中文乱码处理
前几天学习了JSP和Servlet中有关中文乱码的一些问题,写成了博客,今天进行更新一下。应该是可以解决日常的乱码问题了。现在作以下总结希望对需要的人有所帮助。我也是刚学,所以有不足之处希望谅解。
一、表单提交时出现乱码:
在进行表单提交的时候,经常提交一些中文,自然就避免不了出现中文乱码的情况,对于表单来说有两种提交方式:get和post提交方式。所以
面试经典六问
atongyeye
工作 面试
题记:因为我不善沟通,所以在面试中经常碰壁,看了网上太多面试宝典,基本上不太靠谱。只好自己总结,并试着根据最近工作情况完成个人答案。以备不时之需。
以下是人事了解应聘者情况的最典型的六个问题:
1 简单自我介绍
关于这个问题,主要为了弄清两件事,一是了解应聘者的背景,二是应聘者将这些背景信息组织成合适语言的能力。
我的回答:(针对技术面试回答,如果是人事面试,可以就掌
contentResolver.query()参数详解
百合不是茶
android query()详解
收藏csdn的博客,介绍的比较详细,新手值得一看 1.获取联系人姓名
一个简单的例子,这个函数获取设备上所有的联系人ID和联系人NAME。
[java]
view plain
copy
public void fetchAllContacts() {
 
ora-00054:resource busy and acquire with nowait specified解决方法
bijian1013
oracle 数据库 kill nowait
当某个数据库用户在数据库中插入、更新、删除一个表的数据,或者增加一个表的主键时或者表的索引时,常常会出现ora-00054:resource busy and acquire with nowait specified这样的错误。主要是因为有事务正在执行(或者事务已经被锁),所有导致执行不成功。
1.下面的语句
web 开发乱码
征客丶
spring Web
以下前端都是 utf-8 字符集编码
一、后台接收
1.1、 get 请求乱码
get 请求中,请求参数在请求头中;
乱码解决方法:
a、通过在web 服务器中配置编码格式:tomcat 中,在 Connector 中添加URIEncoding="UTF-8";
1.2、post 请求乱码
post 请求中,请求参数分两部份,
1.2.1、url?参数,
【Spark十六】: Spark SQL第二部分数据源和注册表的几种方式
bit1129
spark
Spark SQL数据源和表的Schema
case class
apply schema
parquet
json
JSON数据源 准备源数据
{"name":"Jack", "age": 12, "addr":{"city":"beijing&
JVM学习之:调优总结 -Xms -Xmx -Xmn -Xss
BlueSkator
-Xss -Xmn -Xms -Xmx
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:
java -Xmx355
jqGrid 各种参数 详解(转帖)
BreakingBad
jqGrid
jqGrid 各种参数 详解 分类:
源代码分享
个人随笔请勿参考
解决开发问题 2012-05-09 20:29 84282人阅读
评论(22)
收藏
举报
jquery
服务器
parameters
function
ajax
string
读《研磨设计模式》-代码笔记-代理模式-Proxy
bylijinnan
java 设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
/*
* 下面
应用升级iOS8中遇到的一些问题
chenhbc
ios8 升级iOS8
1、很奇怪的问题,登录界面,有一个判断,如果不存在某个值,则跳转到设置界面,ios8之前的系统都可以正常跳转,iOS8中代码已经执行到下一个界面了,但界面并没有跳转过去,而且这个值如果设置过的话,也是可以正常跳转过去的,这个问题纠结了两天多,之前的判断我是在
-(void)viewWillAppear:(BOOL)animated
中写的,最终的解决办法是把判断写在
-(void
工作流与自组织的关系?
comsci
设计模式 工作
目前的工作流系统中的节点及其相互之间的连接是事先根据管理的实际需要而绘制好的,这种固定的模式在实际的运用中会受到很多限制,特别是节点之间的依存关系是固定的,节点的处理不考虑到流程整体的运行情况,细节和整体间的关系是脱节的,那么我们提出一个新的观点,一个流程是否可以通过节点的自组织运动来自动生成呢?这种流程有什么实际意义呢?
这里有篇论文,摘要是:“针对网格中的服务
Oracle11.2新特性之INSERT提示IGNORE_ROW_ON_DUPKEY_INDEX
daizj
oracle
insert提示IGNORE_ROW_ON_DUPKEY_INDEX
转自:http://space.itpub.net/18922393/viewspace-752123
在 insert into tablea ...select * from tableb中,如果存在唯一约束,会导致整个insert操作失败。使用IGNORE_ROW_ON_DUPKEY_INDEX提示,会忽略唯一
二叉树:堆
dieslrae
二叉树
这里说的堆其实是一个完全二叉树,每个节点都不小于自己的子节点,不要跟jvm的堆搞混了.由于是完全二叉树,可以用数组来构建.用数组构建树的规则很简单:
一个节点的父节点下标为: (当前下标 - 1)/2
一个节点的左节点下标为: 当前下标 * 2 + 1
&
C语言学习八结构体
dcj3sjt126com
c
为什么需要结构体,看代码
# include <stdio.h>
struct Student //定义一个学生类型,里面有age, score, sex, 然后可以定义这个类型的变量
{
int age;
float score;
char sex;
}
int main(void)
{
struct Student st = {80, 66.6,
centos安装golang
dcj3sjt126com
centos
#在国内镜像下载二进制包
wget -c http://www.golangtc.com/static/go/go1.4.1.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.4.1.linux-amd64.tar.gz
#把golang的bin目录加入全局环境变量
cat >>/etc/profile<
10.性能优化-监控-MySQL慢查询
frank1234
性能优化 MySQL慢查询
1.记录慢查询配置
show variables where variable_name like 'slow%' ; --查看默认日志路径
查询结果:--不用的机器可能不同
slow_query_log_file=/var/lib/mysql/centos-slow.log
修改mysqld配置文件:/usr /my.cnf[一般在/etc/my.cnf,本机在/user/my.cn
Java父类取得子类类名
happyqing
java this 父类 子类 类名
在继承关系中,不管父类还是子类,这些类里面的this都代表了最终new出来的那个类的实例对象,所以在父类中你可以用this获取到子类的信息!
package com.urthinker.module.test;
import org.junit.Test;
abstract class BaseDao<T> {
public void
Spring3.2新注解@ControllerAdvice
jinnianshilongnian
@Controller
@ControllerAdvice,是spring3.2提供的新注解,从名字上可以看出大体意思是控制器增强。让我们先看看@ControllerAdvice的实现:
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Component
public @interface Co
Java spring mvc多数据源配置
liuxihope
spring
转自:http://www.itpub.net/thread-1906608-1-1.html
1、首先配置两个数据库
<bean id="dataSourceA" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close&quo
第12章 Ajax(下)
onestopweb
Ajax
index.html
<!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/
BW / Universe Mappings
blueoxygen
BO
BW Element
OLAP Universe Element
Cube Dimension
Class
Charateristic
A class with dimension and detail objects (Detail objects for key and desription)
Hi
Java开发熟手该当心的11个错误
tomcat_oracle
java 多线程 工作 单元测试
#1、不在属性文件或XML文件中外化配置属性。比如,没有把批处理使用的线程数设置成可在属性文件中配置。你的批处理程序无论在DEV环境中,还是UAT(用户验收
测试)环境中,都可以顺畅无阻地运行,但是一旦部署在PROD 上,把它作为多线程程序处理更大的数据集时,就会抛出IOException,原因可能是JDBC驱动版本不同,也可能是#2中讨论的问题。如果线程数目 可以在属性文件中配置,那么使它成为
推行国产操作系统的优劣
yananay
windows linux 国产操作系统
最近刮起了一股风,就是去“国外货”。从应用程序开始,到基础的系统,数据库,现在已经刮到操作系统了。原因就是“棱镜计划”,使我们终于认识到了国外货的危害,开始重视起了信息安全。操作系统是计算机的灵魂。既然是灵魂,为了信息安全,那我们就自然要使用和推行国货。可是,一味地推行,是否就一定正确呢?
先说说信息安全。其实从很早以来大家就在讨论信息安全。很多年以前,就据传某世界级的网络设备制造商生产的交