[Python]非零基础的快速上手

从js转的python,没有从初学者阶段开始,主打一个快速上手能写再说.

pycharm:一种编辑器

数据类型

基本数据类型:整型(整数)、浮点型、字符型、布尔型
复杂数据类型:列表(数组)、集合区{1,2,3}、元组(1,3.4)字典{n’:2,'b:1}

模板字符串

输出模板字符串:print(f"hello{a}");记得前加f才能读取变量
“hello /t world” /t会被编译为长空格
“hello /n world” /n中间换行
让程序在运行时输入一个值给变量a = input();
加上文字提示即a = input("Plz input: ");
a=int(input('Plz input: '))
input()会等待用户输入结果
给值转换数字类型:a = int(“1”); //相当于js的Number();
用户输入完成后按下Enter会继续执行
强制转换一个值的类型:str()、float()、int()

随机数

取随机数:import random;
a = random.randint(1, 100); //取1-100间的一个整数;
a = random.uniform(1, 100); //取1-100间的一个小数; a = random.random(); //取0-1之间一个小数

逻辑关系

“与”:and,“或”:or",“非”: not
复制扩张字符串:
doubleH = “h” * 2; //“hh”
if判断结构:

if c > 0:
    print(True)
elif c == 0:
    print(0)
else:
    print(False)

不等于: !=

循环结构

while a < 10:
    print(a)
    if a == 5:
        break
        '''跳出最内层循环,后续也不执行),若是continue则跳出本轮循环.'''

(编者也提到他不常用while而会选择for)
for循环:

for a in arr0:
    for i in range(10):
    '''range(10)意为0-9的列表'''
        print(i)
'''以上for循环等同于: '''
for i in [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]:
print(i);

字符串

遍历字符串:
for i in ‘ABCD’:
print(i).
字符串截取:
a = ‘my name is xxx’
c = a[1:5]
包括下标1的项,但不包括为5的项,即:y na
d=a[1;]//即y name is xxx,终止项没有,一直取到末尾
c=a[:5]//即:my na,起始项没有,默认从0开始.
e = a[1:3:1] //即:y n,步长1, 在范围内隔1项取一项
f = a[-4,-1]即s x从倒1下标截到倒4下标,不包括倒4下标项
字符串是不可变数字类型
str[0]='a’是不合法的.
替换字符串中某一项:
a = a.replace('xxx’, ’ replace") // my name replace.
提取字符串一段为列表:
arr = a.split(‘abcd’) // [“a”,“a”,“c”, “d”]
将列表拼合为字符串:
str = ‘-’.join(arr) //‘a-b-c-d’
字符串下标访问:
string[0]

列表

判断一个元素是否存于列中:

if 'ele' in arr:
    print(true)
if 'ele' not in arr:
    print(False)

在列表末尾添加一个元素:
arr.append(‘a’)
在列表任一位置添加一个元素:
arr.insert(2, ‘T’) //下标2元素前插入.
删除列表元素:
arr.pop(1) //删除下标为1的元素
删除列表元素:
arr.remove(‘ele’) //删除元素’ele’
清空列表:
arr.clear()
删除列表:
del arr
拷贝列表:
b = a.copy()//只适用于单层列表,参考js的concat()
列表元素排序:
arr.sort() // 没有返回值,修改原数组
a = sorted(arr) //有返回值, 不改原数组

#元组
元组内的元素不能被修改,但可以遍历:

a=(2,3,5)
for i in b:
    print(i)
for i in range(len(c)):
'''内置函数len取length'''
    print(c[i])

集合

s = {1,3,5}
集合具有不重复性,其自动却除内部的重复元素(只留一个)具有无序性,在逻辑上没顺序,没有第几第几这种概念.

字典

d = { 'name': 'a', 1: True, [1,2]: 5 }
'''内部是键值对,键值都是各种类型'''
d.keys()'''获取键列表'''
d.values()'''获取值列表'''
d.items()'''获取键值对列表'''
[(name, 'a), (1, True), ([1, 2], 5)]
'''遍历字典:'''
for k, v in d.items:
    print((k, v))

'''查找:'''d['name"]
'''删除:'''del d["age"]
'''清空:'''d clear()
'''销毁:'''del d

函数

def:函数声明

def day():
    if a:	
        print(1)
day()	
def isDouble(n):
if isDouble(num):	
    print(f'{num}偶数')	
else:
    print(f'{num}非偶')

def color(img: Image, x: int, y: int, color: tuple): 

//类型注释
"拆包"赋值(解构赋值):

def gc:
    return 1, 2
print(g())

得元组(1,2),解构赋值:a, b = g(),字典,集合,元组列表都可以拆包.
不定长参数:

def ar(n, *args):
    print(n)
ar(1,2,3,4)

字符串方法:

str.upper() '''全转大写返回'''
str.lower() '''全转小写返回'''
str.find('') '''查找字符, 返回下标,如果找一段字符,返回首字符下标'''
str.replace("") '''替换字符, 参数(旧, 新)'''
'''检查存在性,返布尔运算符:'''
'xx' in str
'''算数优先级遵缩先乘除后加减:'''
18+3*2**2 == 22

数学函数:

import math
math.round() '''圆弧函数'''
math.abs() '''绝对值'''
math.ceil() '''向上取整'''
math.floor() '''向下取整'''

全局作用域

一个变量属于全局作用域,那么使用时要在前面加global表示要使用全局的变量.比如全局和局部各有变量a,那么要在局部访问全局a,当访问global a

附上我的第一段python程序:

import random

def getRandom():
    global target
    target = random.randint(1, 10)
    print(target)

def checkRes():
    res = int(input("Guess: "))
    if res > target:
        print("大了")
        checkRes()
    elif res < target:
        print("小了")
        checkRes()
    else:
        print("对了")
getRandom()
checkRes()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值