前言

我记得刚开始接触编程的时候,觉得太难了。

也很好奇,写代码的那些人也太厉害了吧?全是英文的,他们的英文水平一定很好吧?

他们是怎么记住这么多代码格式的?而且错了一个标点符号,整个程序都会有影响。

一个程序几千行,错一个标点符号都不行这也太难了吧?

带着新手的灵魂拷问,作为从业单片机编程10年的开发者,我来为大家拨开云雾。

看完以后你就会明白,其实他们也没那么厉害!即便你是初中文凭,也照样能编程。

对于python语言来说,要记得东西其实不多,基本就是几个常用语句加一些关键字而已。

你所看到的那些几千甚至上万行的代码,都是用这些语句和关键词来重复编写的。

只是他们逻辑功能不一样,另外的那些英文,都是程序员自己起的,比如说一些变量的名字,函数的名字。

如果你喜欢你定义成abc都可以,只不过为了程序大了以后为了方便阅读和维护,我们一般起跟要实现的功能相同的英文缩写代替。

比如说我要存储一个电压值,那你可以定义一个变量,名字叫VoltageValue,或者这两个词的缩写VoltVal。

所以,大家不要把这个想得这么神秘和高大上。

1、for循环中的else条件

这是一个for-else方法,循环遍历列表时使用else语句。

下面举个例子,比如我们想检查一个列表中是否包含奇数。

那么可以通过for循环,遍历查找。

numbers = [2, 4, 6, 8, 1]for number in numbers:if number % 2 == 1:print(number)break
else:print("No odd numbers")

2、数字求和

# -*- coding: UTF-8 -*-
# Filename : test.py
# author by : www.runoob.com
# 用户输入数字
num1 = input('输入第一个数字:')
num2 = input('输入第二个数字:')# 求和
sum = float(num1) + float(num2)
# 显示计算结果
print('数字 {0} 和 {1} 相加结果为:{2}'.format(num1, num2, sum))

执行以上代码输出结果为:

输入第一个数字:1.5
输入第二个数字:2.5
数字 1.5 和 2.5 相加结果为:4.0

3、随机数生成

# -*- coding: UTF-8 -*-
# Filename : test.py
# author by : www.runoob.com
# 生成 0 ~ 9 之间的随机数
# 导入 random(随机数) 模块
import random
print(random.randint(0,9))
执行以上代码输出结果为:
4
以上实例我们使用了 random 模块的 randint() 函数来生成随机数,你每次执行后都返回不同的数字(0 到 9),该函数的语法为:
random.randint(a,b)

4、将列表中的所有元素作为参数传递给函数

我们可以使用 * 号,提取列表中所有的元素

my_list = [1, 2, 3, 4]print(my_list)  # [1, 2, 3, 4]
print(*my_list)  # 1 2 3 4

如此便可以将列表中的所有元素,作为参数传递给函数

5、获取列表的所有中间元素

_, *elements_in_the_middle, _ = [1, 2, 3, 4, 5, 6, 7, 8]
print(elements_in_the_middle)  # [2, 3, 4, 5, 6, 7]

6、使用一行代码赋值多个变量

7、Python清空列表

RUNOOB = [6, 0, 4, 1]
print('清空前:', RUNOOB)
RUNOOB.clear()
print('清空后:', RUNOOB)
以上实例输出结果为:
清空前: [6, 0, 4, 1]
清空后: []

8、通过Enum枚举同一标签或一系列常量的集合

枚举是绑定到唯一的常量值的一组符号名称(成员)。

在枚举中,成员可以通过身份进行比较,枚举本身可以迭代。

from enum import Enumclass Status(Enum):NO_STATUS = -1NOT_STARTED = 0IN_PROGRESS = 1COMPLETED = 2print(Status.IN_PROGRESS.name)  # IN_PROGRESS
print(Status.COMPLETED.value)  # 2

9、重复字符串

name = "Banana"
print(name * 4)  # BananaBananaBananaBanana

10、计算每个月天数

#!/usr/bin/python3
# author by : www.runoob.com
import calendar
monthRange = calendar.monthrange(2016,9)
print(monthRange)
执行以上代码输出结果为:
(3, 30)
输出的是一个元组,第一个元素是所查月份的第一天对应的是星期几(0-6),
第二个元素是这个月的天数。以上实例输出的意思为 2016 年 9 月份的第一
天是星期四,该月总共有 30 天。

11、输出指定范围内的素数

# 输出指定范围内的素数
# take input from the user
lower = int(input("输入区间最小值: "))
upper = int(input("输入区间最大值: "))
for num in range(lower,upper + 1):
# 素数大于 1
if num > 1:
for i in range(2,num):
if (num % i) == 0:
break
else:
print(num)
执行以上程序,输出结果为:
$ python3 test.py
输入区间最小值: 1
输入区间最大值: 100

12、计算两数差值

def subtract(a, b):return a - bprint((subtract(1, 3)))  # -2
print((subtract(3, 1)))  # 2

上面的这个方法,需要考虑数值的先后顺序。

def subtract(a, b):return a - bprint((subtract(a=1, b=3)))  # -2
print((subtract(b=3, a=1)))  # -2

使用命名参数,安排顺序,这样就不会出错了。

13、奇数移到偶数前

已知线性表(a1,a2,…,an)按顺序结构存储且每个元素为不相等的整数。设计把所有奇数移动到所有偶数前边的算法(要求时间最少,辅助空间最少)。
对于顺序表L,从左向右找到偶数 L.data[i],从右向左找到奇数 L.data[j],将两者交换。
循环这个过程直到 i 大于 j 为止。对应的算法如下:
时间复杂度O(n),空间复杂度O(1)

void move(SqList &L)
{int i=0,j=L.length-1,k;ElemType temp;while(i<j){//奇数从前向后找while(L.data[i]%2==1)i++;//指向奇数//偶数从后往前找while(L.data[j]%2==0)j--;//指向偶数if(i<j)//奇数在偶数前面{temp=L.data[i];L.data[i]=L.data[j];L.data[j]=temp;}}
}

14、顺序表元素逆置

设计一个高效算法,将顺序表 L 中所有元素逆置,要求算法的空间复杂度为 O(1)。
扫描顺序表 L 的前半部分元素,对于元素 L.data[i],将其与后半部分对应元素 L.data[L.length-i-1]进行交换。对应的算法如下:

void reverse(SqList &L)
{int i;ElemType x;//只扫描前半部分for(i=0;i=L.length/2;i++){x=L.data[i];//L.data[i]后半部分对应元素为L.data[L.length-i-1]/*角标 0 1 2 3 4 5 6元素 a b c d e f g长度 length=7L.data[0]=L.data[L.length-0-1]=L.data[7-1-0]=L.data[6]*/L.data[i]=L.data[L.length-i-1];L.data[L.length-i-1]=x;}
}

15、删除顺序表最小值元素

从顺序表中删除具有最小值的元素(假设唯一)并由函数返回被删除元素的 值。空出的位置由最后一个元素填补。
搜素整个顺序表,查找最小值元素并记在其位置,搜索结束后用最后一个元素填 补空出的原最小值元素的位置。

bool Delete_Min(SqList &L,ElemType &value)
{//表长为0不成立if(L.length==0)return false;//假设第一个元素为最小值value=L.data[0];//记录最小值元素下标int pos=0;int i;//从第二个元素开始比较for(i=1;i<L.length;i++){if(L.data[i]<value){value=L.data[i];pos=i;}}//删除位置的元素用最后一个元素取代L.data[pos]=L.data[length-1];//表长减一L.length--;return true;
}

16、删除值在x~y之间的所有数据

设计一个算法,从一给定的顺序表 L 中删除元素值在 x 到 y(x≤y)之间的所有元素, 要求以较高的效率来实现,空间复杂度为 O(1)。
本题是上述题目的变形。可以采用上述解法一的方法,只是将 L.data[i] == x 的条件改成 L.data[i] >= x && L.data[i] <= y。

void del_xy(SqList &L, ElemType x, ElemType y)
{int i;int k=0;for(i=0;i<L.length;i++){if(L.data[i]>=x&&L.data[j]<=y){L.data[k]=L.data[i];k++;}}L.length=k;
}

方法二:

void del_xy(SqList &L,ElemType x, ElemType y)
{int i=0,k=0;while(i<L.length){if(L.data[i]>=x&&L.data[i]<=y)k++;elseL.data[i-k]=L.data[i];}L.length=L.length-k;
}

17、打印九九乘法表

打印我们小时候背诵用的九九乘法表

for i in range(1, 10):for j in range(1, i+1):print('{}x{}={}\t'.format(j, i, i*j), end='')print()

18、更多资源文末获取

知道你对python感兴趣,所以给你准备了下面的资料~

这份完整版的Python全套学习资料已经上传,朋友们如果需要可以点击链接免费领取或者滑到最后扫描二v码【保证100%免费

python学习资源免费分享,保证100%免费!!!

需要的话可以点击这里

零基础新手小白学编程必会的100个代码相关推荐

  1. 新手学编程必会的100个代码_初学编程100个代码

    这是本文的目录 前言 1.for循环中的else条件 2.数字求和 3.随机数生成 4.将列表中的所有元素作为参数传递给函数 5.获取列表的所有中间元素 6.使用一行代码赋值多个变量 7.Python ...

  2. 视频教程-2020新版C语言程序设计零基础入门小白自学编程-C/C++

    2020新版C语言程序设计零基础入门小白自学编程 7年的开发架构经验,曾就职于国内一线互联网公司,开发工程师,现在是某创业公司技术负责人, 擅长语言有node/java/python,专注于服务端研发 ...

  3. 零基础新手自学Python编程教程入门精通学习资料网站大全

    零基础新手自学Python编程教程入门精通学习资料网站大全 今天说下关于Python的一些普及知识,以及学习资料,这一节我来跟大家分享下. 1 为什么要学习Python? 1 Python是一个脚本语 ...

  4. Asky极简教程:零基础1小时学编程,已更新前8节

    Asky极简架构 开源Asky极简架构.超轻量级.高并发.水平扩展.微服务架构 <Asky极简教程:零基础1小时学编程>开源教程 零基础入门,从零开始全程演示,如何开发一个大型互联网系统, ...

  5. ​零基础新手小白,如何做自媒体每天挣200?快速实操攻略来了【覃小龙课堂】

    大家好,我是腾然MCN创始人覃小龙,您可以称呼我为覃总,今天为您带来的主题是: ​<零基础新手小白,如何做自媒体每天挣200?快速实操攻略来了> 接下来就给到家分享如何注册自媒体.如何发视 ...

  6. 30多岁零基础想转行学编程,来得及吗?

    "30多岁想转行,零基础学编程,来得及吗?能找到好工作吗?"这类问题,总是反复出现. 本文便是我对这类问题的看法.不过,我把它拆分为3个更细的话题,如果你要阅读,一定记得读完全文. ...

  7. 零基础如何开始学编程

    零基础小白学习编程,可以先对计算机基础有一个整体的认识,比如计算机的组成原理.计算机网络.操作系统等.对计算机有一个整体认知之后,可以选择你感兴趣的编程语言进行学习.在这里,我推荐一套专门讲解计算机基 ...

  8. 纯干货!短视频脚本怎么写?零基础新手小白也能写好短视频脚本!【覃小龙课堂】

    hi,我是你的老朋友兼顾问:覃小龙,您可以叫我覃总.今天给您分享我做影视剪辑的一些经验方法,零粉丝也能做,主题名为: 纯干货!短视频脚本怎么写,零基础也能写好短视频脚本 在写脚本以前,我们首先要弄清楚 ...

  9. 【零基础新手小白】OD破解基本的认识

    不管是写注册机还是破解补丁,或者破解一些小软件,加密解密技术多少得了解一点的. 尤其是程序猿,汇编不但要掌握,还要精通!你自己做开发的时候自然不希望自己的东西被破解, 但你要用一些东西的却不想掏钱的时 ...

最新文章

  1. 预测----三个原则
  2. 【怎样写代码】工厂三兄弟之抽象工厂模式(四):抽象工厂模式
  3. Jackson:数组json字符串转对象集合(List)的两种方式
  4. 深入浅出Mybatis系列(一)---Mybatis入门
  5. maven(6)仓库
  6. Packet Tracer 5.0 建构 CCNA 实验攻略——路由器实现 Vlan 间通信
  7. 别人的1024程序员节VS你的1024程序员节
  8. 【小程序】展示弹窗常见API详解
  9. macbook excel导入html,mac版本怎么把网页数据导入Excel
  10. python笔记:7.2.2.2 一元多因素方差分析_交互效应图(购房面积影响因素交互效应)
  11. 续流二极管作用及工作原理
  12. ibm17个量子纠缠计算机,走近量子纠缠-17-量子计算机
  13. python中除法带小数点_python 除法保留两位小数点的方法
  14. 局域网工作组电脑网络邻居访问慢打开要好几分钟
  15. JQuery TreeGrid 组件详解
  16. uniapp中调用震动、系统铃声以及自定义铃声
  17. 我的平安健康生活---师旭平
  18. MYSQL/ORACLE/SQL SERVER的默认端口号
  19. 家用计算机的ram怎么清理,计算机内存怎么清理
  20. 英文歌曲:Right Here Waiting(此情可待)

热门文章

  1. 预编译文件,预编译头文件认识
  2. Go实现简易聊天室(群聊)
  3. java实现创蓝短信
  4. 苹果cms怎么设置播放器
  5. 如何系统的学习Python?
  6. DFS练习——王子救公主
  7. 168 PHP中Notice: iconv(): Unknown error (84) 的解决办法
  8. Java程序入门教程 | Java
  9. 绩效考核指标KPI 听课笔记
  10. c语言实现简单的五子棋游戏