👨💻个人主页 :@元宇宙-秩沅
👨💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!
👨💻 本文由 秩沅 原创
👨💻 收录于专栏 :Unity人机交互
⭐🅰⭐
文章目录
⭐前言⭐
🎶(1) 人机交互------Python 简介
-
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
-
Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
** Python 是一种解释型语言**: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。
Python 是交互式语言: 这意味着,您可以在一个 Python 提示符 >>> 后直接执行代码。
Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
Python 是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏。
🎶(2)人机交互------Python 的基本语法
🌀1、中文编码
很多同学在打开数据时会遇上乱码问题,其原因是字符集的编码问题。Linux和Mac默认的编码集是UTF8,而Windows则是ASCII。如果数据编码的字符集,和你使用Python进行处理时所用的字符集不同,则会出现乱码问题。
另外,我个人的习惯是在Python代码的头部加入以下内容,其中第二行声明了使用UTF8字符集。
#!/usr/bin/env python# coding:utf8
🌀2、变量
Python中的变量可以看作是一个个容器,里面存放着我们需要使用到的值。
Python对变量名的要求和其他语言一样:可以包括英文、数字以及下划线,但不能以数字开头,区分大小写。 当然我推荐,变量名用纯英文就很好,并且取一些有意义的名称,便于自己理解每个变量的作用。
Python是一门弱类型的语言,在使用变量时无需声明其类型。Python中的变量包括以下几类:数值、字符串、列表、元组、字典。
🌀 3、数值
数值包括整型和浮点型,分别对应整数和浮点数,后者精度更高。
# 整型a = 1# 浮点型b = 2.1print a, b
🌀4、字符串
字符串也就是我们经常接触到的文本,可以往里面放任意长度的内容,用单引号或双引号括起来。应当注意,中文以及中文符号只能出现在字符串內,如果在下面第三行中使用了中文输入法的逗号 ,Python将报错。
c = Hello d = 你好 print c, d
使用 + 可以拼接两个字符串。
print c + d
🌀5、元组
元组和列表类似,唯一的不同是元组中的元素在初始化之后不能再更改,因此可以理解成一个只读的变量。
# 使用()定义一个元组a = (1, 2.1, Hello )# 尝试修改元组中的元素会报错a[0] = 100
🌀6、注释
被注释的代码将不会运行,可以看作是写给自己和其他程序猿阅读的一些笔记和说明,提高代码可读性。
# 这里是单行注释 这里是很多行注释
🌀7、运算符
运算符的作用是根据已有的变量生成新的变量,主要有以下几种:
算术运算符:+,-,*,/,%,即加、减、乘、除、取余
比较运算符:==,!=,>,<,>=,<=,即等于、不等于、大于、小于、大于等于、小于等于
赋值运算符:=,+=,-=,*=,/=,%=,即赋值、加赋值、减赋值、乘赋值、除赋值、取余赋值
逻辑运算符:and,or,not,即与、或、非
a = 1b = 2print a + bprint a == b# 等价于 a = a + 3a += 3print ac = Trued = Falseprint c and d
🌀8、条件
在写代码的时候,往往需要根据某些条件进行判断,并根据判断结果执行不同的分
支代码。
a = 1# 单个条件if a == 1: print 11111# 处理条件不成立的分支if
a == 2: print 22222else: print 33333# 多个条件,加多少个都可以if
a == 1: print 11111elif a == 2: print 22222else: print 33333
需要注意的是,但凡出现了 if 和 elif ,就需要加上相应的条件判断,并且注意代码的缩进。在Sublime中输入if会出现相应的提示,可以方便地补全代码,在换行时光标也会自动跳到合适的缩进处。
🌀9、循环
如果需要打印从1到100的100个数,肯定不会傻傻地写100行print代码,而是会用循环来处理类似的重复性工作。
10、while 循环
while 循环的思想是,只要某一条件成立,就不断执行循环体里的代码,直到条件不再成立。
flag = 1while flag < 10: print flag
# 一定要记得在循环体里修改条件变量
# 否则可能导致死循环 flag += 1
🌀11、for 循环
for 循环的循环次数一般是事先预知的,将一个标志变量从某个起始值迭代到某个终止值后即结束。
# x从0开始,一直到9结束for x in xrange(0, 10): print x
🌀12、循环控制
循环控制主要包括三种:pass 、 continue 、 break 。
pass 表示什么也不做,只是占一行代码的位置;continue 表示立即退出本轮循环,继续执行后续轮循环;break 表示立即推出循环,后续循环也不再执行。
for x in xrange(0, 10): if x == 5: pass else: print xfor x in xrange(0, 10): if x == 5: continue print xfor x in xrange(0, 10): if x == 5: break print x
🎶(3) 人机交互------Python 基础实战训练部分
⭕【程序1】
题目:输入三个整数x,y,z,请把这三个数由小到大输出。
1.程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。
2.程序源代码:
python
l = [] //设置一个空的数组
for i in range(3)://for循环,循环3次
x = int(raw_input('integer:\n'))//输入你需要比较的数
l.append(x)
l.sort()
print l
⭕【程序2】
题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后
的结果满足如下条件,即是结果。请看具体分析:
2.程序源代码:
python
include "math.h"
main()
{
long int i,x,y,z;
for (i=1;i<100000;i++)
{ x=sqrt(i+100); /*x为加上100后开方后的结果*/
y=sqrt(i+268); /*y为再加上168后开方后的结果*/
if(x*x==i+100&&y*y==i+268)/*如果一个数的平方根的平方等于该数,这说明此数是完全平方数*/
printf("\n%ld\n",i);
}
}
'''
import math
for i in range(10000):
#转化为整型值
x = int(math.sqrt(i + 100))
y = int(math.sqrt(i + 268))
if(x * x == i + 100) and (y * y == i + 268):
print i
⭕【程序3】
题目:输出9*9口诀。
1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。
2.程序源代码:
python
include "stdio.h"
main()
{
int i,j,result;
printf("\n");
for (i=1;i<10;i++)
{ for(j=1;j<10;j++)
{
result=i*j;
printf("%d*%d=%-3d",i,j,result);/*-3d表示左对齐,占3位*/
}
printf("\n");/*每一行后换行*/
}
}
for i in range(1,10):
for j in range(1,10):
result = i * j
print '%d * %d = % -3d' % (i,j,result)
print ''
⭕【程序4】
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数
本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
2.程序源代码
python
for n in range(100,1001):
i = n / 100//个位数
j = n / 10 % 10//十位数
k = n % 10//百位数
if i * 100 + j * 10 + k == i + j ** 2 + k ** 3:
print "%-5d" % n
⭕【程序5】
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时
共有5个数相加),几个数相加有键盘控制。
1.程序分析:关键是计算出每一项的值。
2.程序源代码:
python
Tn = 0
Sn = []
n = int(raw_input('n = :\n'))//输入n的次数
a = int(raw_input('a = :\n')) //输入a的值
for count in range(n)://循环n次
Tn = Tn + a
a = a * 10
Sn.append(Tn)
print Tn
Sn = reduce(lambda x,y : x + y,Sn)
print Sn
⭐🅰️⭐
你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!、